📌  相关文章
📜  如何在 Git 中撤消提交?

📅  最后修改于: 2022-05-13 01:56:11.888000             🧑  作者: Mango

如何在 Git 中撤消提交?

基本上,您在本地存储库中进行了最后一次提交,并且没有推回公共存储库,或者只是您想更改,基本上,您不想执行该提交,因此您想撤消提交,但一般来说,会出现需要撤消提交的两种情况,有时可能如下:

  1. 从本地存储库撤消提交
  2. 从公共存储库撤消提交

案例 1:撤消本地存储库中的提交

1.1首先检查你的所有提交

#git log

输出:提交只是示例或示例提交

commit 2: second commit  
commit 1:  First commit  

得出的看法如下:

  • commit 2 是你要撤消的提交,当前的 head 在这里
  • commit1 是撤消后要进行的第一个提交

1.2要恢复所有内容或撤消所有更改,我们必须重置提交。

#git reset --soft HEAD^      
#git reset --hard HEAD^  

1.3 检查您的提交是否已重置

#git log

输出:

commit 1: First commit   
//undo the second commit, now head is at first or previous commit

可以清楚地看到最后一次提交(即第二次提交)被删除了。

案例 2:从公共存储库撤消提交

现在,如果我们已经公开了您的提交,那么您将必须创建一个新的提交,它将“恢复”您在之前的提交(当前的 HEAD)中所做的更改,然后遵循某些命令:

  • 还原更改
  • 检查所有提交以查看提交列表

2.1还原您的更改 

#git revert HEAD  

我们现在已为您的新提交做好准备,以便使用以下命令恢复我们意外删除的文件,如下所示:

#git commit -m 

2.2现在检查所有提交以查看提交列表

#git log

输出:

commit 3: restoring the file that we accidentally remove  
commit 2: removing a file we don't need 
commit 1: Needed file 

现在我们可以恢复你的最后一次提交。

另请注意,我们使用下面指定的命令来撤消 git 中的最后一次提交,其中 head 是指向我们分支中最后一次提交的指针

git reset HEAD~