Git如何回退commit

7

我想回到一个已提交的版本。我该怎么做?

$ git reflog
9b2a45e HEAD@{0}: reset: moving to HEAD~1
0c54f19 HEAD@{1}: reset: moving to HEAD~1
b9c157d HEAD@{2}: commit: updated from online
0c54f19 HEAD@{3}: commit: add img from download folder
9b2a45e HEAD@{4}: commit: add images
6fa6e34 HEAD@{5}: clone: from git@bitbucket.org:starpix/dojo.git


$ git reset --hard HEAD~1
HEAD is now at 9b2a45e add images

我想回到“从在线更新”。我该怎么做?
3个回答

9

git checkout b9c157d 命令用于切换到以 b9c157d 开始的 sha 标识的提交,即你询问的那个提交。


9
你可以往前移动头以到达b9c157d。
git reset --hard b9c157d

重置命令是最理想的选择,这样你仍然可以让你的分支跟踪你的更改。如果你想在暂存区或工作区中获取跳过的更改,你可以使用--soft或--mixed开关,否则--hard就足够了。 - maxmelbin

1
如果您有特定提交的提交ID,则可以使用以下语法。
在提交名称中传递提交ID:git checkout commit_name。如果您不想再次检出,则可以通过以下方式还原提交:git revert commit_name

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接