我使用命令错误地将文件添加到 Git :
git add myfile.txt
我还没跑呢git commit
。我如何撤销这些修改,使这些修改不包含在承诺中?
我使用命令错误地将文件添加到 Git :
git add myfile.txt
我还没跑呢git commit
。我如何撤销这些修改,使这些修改不包含在承诺中?
当前回答
运行运行中
git gui
,然后手动删除所有文件,或者选择全部文件,然后单击实施后的非阶段按钮。
其他回答
要撤销git add
, 使用 :
git reset filename
正如其他人在相关问题中所指出的(见A/CN.9/WG.III/WG.II),在这里, 在这里, 在这里, 在这里, 在这里, 在这里, 和在这里现在可以了取消一个单独的文件与:
git restore --staged <file>
和取消所有文件以下列方式写成:
git restore --staged .
git restore
于2019年7月以2.23版本发布。
与--staged
旗帜, 它会恢复索引的内容( 在此询问什么 ) 。
运行时git status
与 Saged 未经发送文件一起, Git 现在建议用这个来解开 Page 文件( 而不是git reset HEAD <file>
在 v2.23 之前使用过。
要重置特定文件夹( 及其子文件夹) 中的每一文件, 您可以使用以下命令 :
git reset *
问题未明确提出,原因是:git add
有两个含义:
git rm --cached file
.git reset HEAD file
.如果有疑问,使用
git reset HEAD file
因为它在两种情况下都做了预期的事
警告 :如果有的话git rm --cached file
档案中修改后(一个之前在存储库中存在的文件) , 然后文件将会在git commit
! 它将仍然存在于您的文件系统中, 但是如果有其他人拉动您的承诺, 文件将会从他们的工作树上删除 。
git status
将会告诉你,如果文件是新文件或修改后:
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: my_new_file.txt
modified: my_modified_file.txt