我经常使用git add -p
在Git中分段提交文件,但这对未跟踪的文件不起作用:
$ git add -p file
No changes.
如何添加此文件,但不能暂存所有文件?
我想只添加其中的一部分并提交,并将其余部分保持未分级。
答案 0 :(得分:5)
您可以分两步完成此操作:
git add -N file
来自man page:
-N, --intent-to-add
仅记录稍后将添加路径的事实。路径的条目放在索引中,没有内容。这很有用 除其他外,显示此类文件的未分级内容 使用git diff
并将其与git commit -a
一起提交。
此命令会将文件添加为空,因此它不会再被跟踪,但它们都不会被暂存。
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: file
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: file
#
git add -p file
现在跟踪文件,git add -p
正常工作。