如何回滚到以前的状态?

git log
commit ef6760acae8c3c778b90975ea18d6969fa54de55 (HEAD -> master)
Author: xxxxxxxxxxxxxxxxx
Date:   Sat Apr 27 16:40:29 2024 +0800

    english

commit 23521475fea20408c5fe1aecb8a46bd1373349ad
Author: xxxxxxxxxxxxxxxxx
Date:   Thu Apr 25 14:10:19 2024 +0800

    english

我想回滚到Apr 25 的状态,应当如何操作?

阅读 639
3 个回答

可以使用 reset 直接重置到指定的 commit 记录。

git reset --hard 23521475fea20408c5fe1aecb8a46bd1373349ad

如果你之前已经推送到远端了,再次推送的时候就会被拒绝,因为远端更新,你只能强制推送,如果在多人协作中,最好确保你的操作没有问题后,执行强制推送。

优先使用下面的命令,来避免其他人提交推送过的代码丢失。

git push --force-with-lease

如果不行则使用

git push -f

用commmit的编号来回滚就可以了

git reset --hard 23521475fea20408c5fe1aecb8a46bd1373349ad

然后推送到远端,因为此时远端会有更加新的提交,如果想推送,必须使用强制推送

git push -f
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
Microsoft
子站问答
访问
宣传栏