您的文件删除更改未显示在 git 的索引中的原因是您自己删除了文件而没有通知 git。
现在有两种方法可以解决这个问题。
选项1:
使用该git add -u <FILES>
命令使索引中跟踪的文件反映工作树中的更改。Git 会检测你的工作树中的文件删除,并更新索引以对应这个状态。
# Example command to update the git index to
# reflect the state of the files in the work-tree
# for the two files named helpers.php and registry.class.php
git add -u helpers.php registry.class.php
选项 2:
要删除文件,而不是使用shell 中的del
或rm
命令手动删除它,您可以直接要求 git 删除并使用git rm
命令记下索引中的更改。请注意,即使您自己已经删除了文件(如您提到的情况),也可以执行此命令。
# Example command to remove two files named
# helpers.php and registry.class.php
git rm helpers.php registry.class.php
使用上述任一选项,您应该看到您的状态命令应该自动指示文件已在暂存区域中删除:
git status
# On branch testing
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# deleted: helper.php
# deleted: registry.class.php
#
然后您应该能够使用该commit
命令提交更改。
git commit -m "Deleted some files from testing branch"