Ped*_*ino 52 git version-control
git status显示了一堆被修改的文件和一些被删除的文件.我想首先提交修改后的文件,然后提交已删除的文件.我没有看到任何可以git add让我这样做的选项.我该怎么做?
编辑:正如所指出的,git add无论如何都不会上传已删除的文件,所以git add .会这样做.但它有包含未跟踪的文件的副作用,我也想避免.我已相应更改了问题的标题.
tok*_*rev 76
以下命令应该可以解决问题:
git commit -a
Run Code Online (Sandbox Code Playgroud)
要么
git commit -am "commit message"
Run Code Online (Sandbox Code Playgroud)
从Pro Git书中:
为git commit命令提供-a选项使Git在执行提交之前自动暂存已跟踪的每个文件
Ped*_*ino 31
git diff --name-only --diff-filter=M | xargs git add
jln*_*brg 16
你可以使用:
git add -u
Run Code Online (Sandbox Code Playgroud)
暂存自上次提交后已修改的已跟踪文件.
从git-add手册页:
-u
--update仅匹配索引中已跟踪的文件而不是工作树.这意味着它永远不会暂存新文件,但它会暂存已修改的跟踪文件的新内容,并且如果已删除工作树中的相应文件,它将从索引中删除文件.如果没有,则默认为"."; 换句话说,更新当前目录及其子目录中的所有跟踪文件.
不确定何时添加了此功能.