如何回退一个提交了的commit

How to reset a commit

You could follow these steps to revert the incorrect commit(s) or to reset your remote branch back to correct HEAD/state.

1.checkout the remote branch to local repo.

git checkout your_branch_name

2.copy the commit hash

(i.e. id of the commit immediately before the wrong commit) from git log

git log -n5

should show something like this:

commit 7cd42475d6f95f5896b6f02e902efab0b70e8038 "Merge branch 'wrong-commit' into 'your_branch_name'"
commit f9a734f8f44b0b37ccea769b9a2fd774c0f0c012 "this is a wrong commit" 
commit 3779ab50e72908da92d2cfcd72256d7a09f446ba "this is the correct commit"

3.reset the branch to the commit hash copied in the previous step

git reset <commit-hash> (i.e. 3779ab50e72908da92d2cfcd72256d7a09f446ba)

4.run the git status to show all the changes that were part of the wrong commit.

5.simply run git reset --hard to revert all those changes.

6.force-push your local branch to remote and notice that your commit history is clean as it was before it got polluted.

git push -f origin your_branch_name

The end.

作者:GeniusLyzh
出处:http://www.cnblogs.com/GeniusLyzh/
本文链接:https://www.cnblogs.com/GeniusLyzh/p/15563343.html
本文版权归作者和博客园共有,欢迎转载,须保留此段声明,并给出原文链接,谢谢!
如果阅读了本文章,觉得有帮助,欢迎点击右下角推荐
posted @   Aarongo  阅读(344)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示