撤消 git add 的最简单方法是什么

Dan*_*ura 1 git

如何撤消而不丢失本地所做的git add . 更改?

我本来想这么做,git add './file1.java './file2.java'但结果却是这么做了git add .

Ale*_*ler 7

如何撤消 git add 操作?

简而言之,根据您的具体情况...

$ git restore --staged .
Run Code Online (Sandbox Code Playgroud)

...将所有分阶段的更改移回您的工作树,而不会有任何数据丢失的风险;然后,您可以仅重新添加您最初想要添加的文件。请参阅下图,展示如何restore使用暂存区域工作树进行操作。

git恢复图解

警告:执行对工作树restore所做的更改将导致数据丢失。

Git 2.23 之前(2019 年发布)

由于 Git 2.23restore是取消暂存文件的首选选项,因此在此版本之前reset是要使用的命令,并且仍然可以使用。

reset要取消暂存所有文件,还可以使用以下命令:

$ git reset -- .
Run Code Online (Sandbox Code Playgroud)

注意 Git 的冗长

正如上图中的终端所示,Git 的 CLI 非常冗长且在通信方式上很有帮助。请注意如何显示如何在暂存区域工作树git status之间移动更改。

资料来源:以上摘录自这篇主题为: How to undo Changes in Git? 的完整帖子。(重置、恢复、恢复)