如何在已删除的文件夹中暂存已删除的文件

How to stage deleted files inside a deleted folder

我正在尝试暂存单个文件以供删除,但 git (v1.9.1) 拒绝暂存它们,因为它们曾经所在的文件夹已被删除。

我不能使用 git add -u 因为它会暂存 所有 修改和删除的文件。如果我这样做

git add -u /path/to/deleted/folder/afile

git rm /path/to/deleted/folder/afile

我得到:

fatal: Could not switch to '/path/to/deleted/folder/': No such file or directory

这是因为 /path/to/deleted/folder/ 不再存在。

我不明白为什么 git 在被告知暂存已删除的文件时需要切换到一个目录并且必须手动重新创建每个已删除的文件夹只是为了让 git 知道,是的,文件真的走了似乎疯了。

有没有办法强制 git 暂存已删除的文件而不需要路径存在?

感谢 Wolf 和 ROMANARMY,升级到 2.5 允许 git rm 成功。

以防万一有人关心,这是我将我的 Ubuntu 14.04 从默认 git 升级到 2.5 的方法:

$ sudo add-apt-repository ppa:git-core/ppa
$ sudo apt-get update
$ sudo apt-get install git

$ git --version
git version 2.5.0