我在一个变更集中有一堆文件,但我想特别忽略一个修改过的文件。在git状态后看起来如下:

# modified:   main/dontcheckmein.txt
# deleted:    main/plzcheckmein.c
# deleted:    main/plzcheckmein2.c
...

有没有一种方法可以让我添加git,但忽略我不想触摸的一个文本文件?类似于:

git add -u -except main/dontcheckmein.txt

当前回答

我们可以添加所有文件,并排除必须通过git reset删除的文件。

git add .
git reset -- <file_name_to_exclude>

其他回答

使用gitadd-A一次添加所有修改的和新添加的文件。

实例

git add -A
git reset -- main/dontcheckmein.txt
git add .
git reset main/dontcheckmein.txt
git add -u
git reset -- main/dontcheckmein.txt

注意:Git随后为此添加了特殊语法,其他答案对此进行了解释。

不是直接按照你的要求,因为它不是一个命令就能实现的,但结果应该是你想要的。

通过将所有文件添加到临时区域后

git add -u

键入gitstatus将建议您

git restore --staged main/dontcheckmein.txt

试试看:

git checkout -- main/dontcheckmein.txt