如何从git临时区域中删除文件?

我在我的本地仓库中对我的一些文件进行了修改,然后我做了git add -A ,我觉得在临时区域添加了太多的文件。 如何从暂存区域删除所有文件?

我这样做后,我会手动,所以git add "filename"

您可以使用从索引中取消保存文件

 git reset HEAD -- path/to/file 

就像git add ,你可以通过目录recursion地recursion文件等等,所以要一次取消所有的东西,从你的仓库的根目录运行它:

 git reset HEAD -- . 

另外,为了将来的参考, git status的输出将告诉你需要运行的命令将文件从一个状态移动到另一个状态。

使用

 git reset 

取消所有上演的文件。

如果你已经犯了一堆不需要的文件,你可以取消它们, 告诉git将它们标记为已删除(而不是实际删除它们)

 git rm --cached -r . 

--cached告诉它从分段和索引中删除path,而不删除文件本身, -r以recursion方式操作目录。 然后你可以git add任何你想要跟踪的文件。

这里的答案看起来不赞成。 我在Ubuntu上testing过,没有任何工作。 即使重置HEAD – ,有或没有点。 所以我只是分享真正对我有用的东西:

git clean -df

所以,你应该重置更改

 git reset --hard HEAD 

然后用清理未跟踪的文件和目录

 git clean -df 

在Ubuntu 15.X上testing和确认。 我希望这有助于下一个。 问候。

参考: https//git-scm.com/docs/git-clean

正如在其他答案中指出的,你应该使用git reset 。 这将撤消git add -A

注意: git reset相当于git reset --mixed这是做这个

重置索引而不是工作树(即,保存更改的文件但未标记为提交)并报告尚未更新的内容。 这是默认的操作。 [ git reset ]