如何从git暂存区删除文件?

我对我的本地版本中的一些文件做了修改,然后我做了git add -A,我认为它在暂存区添加了太多的文件。我怎样才能从暂存区删除所有的文件?

做完后,我就手动做git add "filename"

你可以用以下方法将文件从索引中取消缓存

git reset HEAD -- path/to/file

就像git add一样,你可以按目录等递归地解除文件缓存,所以要想一次性解除所有文件的缓存,可以从你的版本库的根目录运行这个。

git reset HEAD -- .

另外,为了便于以后参考,git status的输出会告诉你需要运行哪些命令来把文件从一个状态移到另一个状态。

评论(5)

如果你已经提交了一堆不需要的文件,你可以解除它们的缓存,并告诉git将它们标记为已删除(实际上并没有删除它们)。

git rm --cached -r .

--cached告诉它从暂存和索引中删除路径,而不删除文件本身,-r对目录进行递归操作。然后你可以git add任何你想继续跟踪的文件。

评论(6)

你可以用

git reset HEAD

然后添加你想要的特定文件,用

git add [directory/]filename
评论(8)