0

我暂存了一堆文件,然后在提交到存储库之前删除了它们。当我这样做时,git status我看到了:

# deleted: filename.fileext

我已经能够提交新的更改,但这些已删除的文件仍出现在状态检查中。有人可以解释为什么吗?我该如何摆脱它们?

4

2 回答 2

0
git add -u
git commit -m "Deleted files manually"
于 2012-08-14T13:20:21.667 回答
0

如果您使用rm命令删除文件,请运行git rm <file_path_to_be_removed>以告诉 git 这些文件已被删除。

rm命令仅删除物理文件。然后你需要通知 git。

kevin@kevin-dev:/tmp/git$ touch a.txt
kevin@kevin-dev:/tmp/git$ git add a.txt
kevin@kevin-dev:/tmp/git$ git commit -m"m"
[master (root-commit) 03f6743] m
 0 个文件更改,0 个插入 (+),0 个删除 (-)
 创建模式 100644 a.txt
kevin@kevin-dev:/tmp/git$ git 状态
# 在分支master上
没有什么可提交的(工作目录干净)
kevin@kevin-dev:/tmp/git$ rm a.txt
kevin@kevin-dev:/tmp/git$ git 状态
# 在分支master上
# 未为提交暂存的更改:
# (使用 "git add/rm ..." 更新将要提交的内容)
# (使用 "git checkout -- ..." 丢弃工作目录中的更改)
#
# 删除:a.txt
#
没有添加到提交的更改(使用“git add”和/或“git commit -a”)
kevin@kevin-dev:/tmp/git$ git rm a.txt
rm'a.txt'
kevin@kevin-dev:/tmp/git$ git 状态
# 在分支master上
# 要提交的更改:
# (使用“git reset HEAD ...”取消暂存)
#
# 删除:a.txt
#
kevin@kevin-dev:/tmp/git$

牵引deleted状态不同。第一个是Changes not staged for commit:,第二个是Changes to becommited: 所以,只需运行git commimt -m"Message",然后一切就干净了。

于 2012-08-14T13:20:56.480 回答