如何修改git add来处理已删除的文件?

Jam*_*sev 31 git

我从我的git repo中删除了一些文件,现在,状态见

# Changes not staged for commit:
# ...
#   deleted:    project/war/favicon.ico
#   deleted:    project/war/index.html
Run Code Online (Sandbox Code Playgroud)

通常,我会通过发出git add .命令来暂存它们,但这样做不会影响git状态.文件仍未进行提交.

现在..我知道我可以git rm file照顾这个.

问题是...我可以修改git add .某种方式也可以暂存已删除的文件吗?我想加上"." 照顾一切(包括已删除的文件)

cdh*_*wie 60

git add .将新的和修改过的文件添加到索引中. git add -u将在磁盘上删除文件时删除索引中的文件并更新修改后的文件,但不会添加新文件.你需要两者的结合:

git add . && git add -u .
Run Code Online (Sandbox Code Playgroud)

附录:看起来-A交换机将捕获所有三个:添加,修改和删除的文件.

git add -A .
Run Code Online (Sandbox Code Playgroud)

注意额外的'.' 在git add -Agit add -u


警告,启动git 2.0(2013年中),git add -A|u(不是额外的点)将始终在所有工作树上暂存文件.
如果您只想在当前路径下使用该工作树暂存文件,则需要使用

$ git add -A .
Run Code Online (Sandbox Code Playgroud)

参见" 差异git add -A"和git add ." ".

  • 为这个用例设计的`git add -A`为+1. (4认同)