Git提交,`没有这样的文件或目录`?

时间:2011-12-22 09:12:55

标签: xcode git

我已从项目中删除了一些文件,但它们仍会在提交屏幕中显示,旁边有D符号。

当我尝试提交时,我得到了错误....没有这样的文件或目录,我怎样才能删除这些文件又消除警告?

3 个答案:

答案 0 :(得分:3)

D表示已删除。如果您使用rm或通过finder删除文件,Git仍然知道文件。要从git和磁盘中删除文件:

git rm <filename>
git commit -m "message"

答案 1 :(得分:0)

根据评论,似乎git不知道该文件,即:该文件在索引中不是 staged 。尝试运行这一系列命令:

git add <filename> // stage the file
git rm --cached <filename>

也许您只是使用某种rm <filename>删除了该文件,在这种情况下,请先尝试检出该文件,然后尝试删除。

git checkout HEAD -- <filename>
git rm <filename>

答案 2 :(得分:0)

在git中,当您向登台区域添加更改时(提交之前),默认情况下不会暂存删除​​文件的更改。在您的--all中使用-A--no-ignore-removalgit add <filename>选项可以进行所有类型的更改。

即。 git add . --all将在您提交之前暂存所有更改,包括已删除的文件更改。

或者,正如Dau在他的回答中提到的,如果你使用git rm <filename>并且git从工作树和索引中删除文件。