只用Git取消暂存新文件

13

我不小心暂存了许多改动,包括我不想提交的新文件。

如何取消暂存或重置仅限于新文件?

我不需要脚本,我需要在有意义的主题标题下,在SO上公开和记录核心git功能。

1个回答

9

你可以通过取消暂存/重置所有更改,然后重新暂存只需要的内容来实现此操作:

git reset HEAD ./
git add -u
# -u stages changes to tracked files, and will not stage new files.

这基本上就是方法。请注意,这是一个“reset --mixed”,也可以拼写为“git reset --mixed HEAD -- .”,这明确了您要求将HEAD移动到具有路径名“.”的HEAD。将HEAD移动到HEAD本身是无操作的,因此只有索引重置部分(通过--mixed)才有任何效果,并且指定的路径是.,即当前目录(其所有文件以及任何子目录和它们的文件,递归地)。 - torek
2
注意:在初始提交之前,没有要“重置”的HEAD。在这种情况下,git rm --cached -r .将取消暂存所有内容。 - Jonathan Lonowski

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接