我的工作分支中有一堆已删除的文件,我不确定是否要提交。我需要根据需要提交我修改过的文件。
这就是我提出的:
git add `git status | grep modified | cut -f2 | cut -f4 -d' '`
这个答案有类似之处,但并不是更好:https://stackoverflow.com/a/8277826
那么有更简单的解决方案吗?
答案 0 :(得分:13)
只需使用git add --no-all .
(Git v.2.0 +)或git add .
(Git v.1.x)。这将通过遍历当前目录获取它可以找到的任何文件,这自然不会包含已删除的文件。
当然,这也可以获取任何未跟踪的文件。如果您需要避免这些,那么您可以使用更复杂的表达式。它与您的类似,但它使用了用于编写脚本的输出(因此它更稳定,更易于解析):
git diff-files -z --diff-filter=M --name-only --relative | xargs -0 git add