我在这里遇到的情况是,另一个合作者完成了 2 次提交,这似乎是错误的文件。我是存储库的所有者,并希望恢复由其他合作者完成的 2 次提交。从我的终端,我尝试了以下操作。
git log -2它只是说我所做的最后 2 次提交。我想知道如何重置最后 2 个提交并将 HEAD 更改为那些 2 个之前的提交。
Tim*_*sen 13
使用git revert:
git revert A^..B
Run Code Online (Sandbox Code Playgroud)
其中A是要还原的两个提交中第一个提交B的哈希值,是第二个提交的哈希值。即使自两次提交以来在远程分支上进行了其他提交,这种方法也将起作用。
如果此分支未与任何人共享,您也可以使用
git reset --hard HEAD~2
Run Code Online (Sandbox Code Playgroud)
但要注意git reset --hard在公共共享的分支上使用。对于共享分支,git revert如上所述使用要安全得多。
只需将其重置为两次提交之前的提交哈希即可:
git reset <commit-hash>
Run Code Online (Sandbox Code Playgroud)
这将删除之后的提交commit-hash并将更改带到您的工作区。如果您不想进行更改,可以传递一个--hard选项。
试试这个,但要确定你想要做什么
git reset --hard HEAD~2
Run Code Online (Sandbox Code Playgroud)
git reset --hard是不可逆转的变化。也可能是学习的好时机git reset --hard/--soft/ --mixed
我也建议通过这个
| 归档时间: |
|
| 查看次数: |
19009 次 |
| 最近记录: |