我在我的本地repo中修改了一些文件,然后我做了git add -A,我认为这给暂存区添加了太多的文件。如何从暂存区删除所有文件?

之后,手动执行gitaddfilename。


当前回答

从暂存区删除所有文件使用- git重置 删除特定的文件使用- git重置文件路径

其他回答

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

git rm --cached -r .

——cached告诉它从staging和索引中删除路径,而不删除文件本身,-r对目录进行递归操作。然后,您可以git添加任何您想要跟踪的文件。

现在在v2.24.0建议

git restore --staged .

取消文件。

可以从索引中取消文件

git reset HEAD -- path/to/file

就像git add一样,你可以按目录递归地取消文件,所以要一次性取消所有内容,从存储库的根目录运行这个命令:

git reset HEAD -- .

此外,为了便于将来参考,git status的输出将告诉您将文件从一种状态移动到另一种状态所需运行的命令。

使用“git reset HEAD <file>…”取消fils

例如:取消所有文件

git reset HEAD .

取消一个文件

git reset HEAD nameFile.txt

我尝试了所有这些方法,但没有一个对我有效。我使用rm -rf .git从本地存储库中删除了.git文件,然后再次执行git初始化和git添加和例程命令。它工作。