微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用git revert还原两个提交

如何解决使用git revert还原两个提交

我需要还原以下两个提交:

user@007:~/git/project_demo$ git log --oneline
4736674 FIXED:Included src2.cpp file in code coverage.      
d7f6712 TASK:Introduced code coverage for selected project test cases. 
60542ef TASK: Implemented first version here.

如何使用此git revert命令?

我应该两次使用git revert还是一次使用git revert并传递绝对提交SHA1值。

我想提交60542ef并在此提交的基础上进行新的更改。

这里我只需要使用git revert而不是git reset。

解决方法

是的,只需按相反的时间顺序还原它们

git revert 4736674 
git revert d7f6712

如果您需要/想要将两个还原都作为一个还原提交,只需将-n添加到您的第一个还原中,它将阻止该提交,并且您将使用第二个命令还原所有内容。

根据git revert的定义,无需用力推动,因为这不会破坏历史记录。

,

如果要保留历史记录,请遵循以下命令,

git revert 4736674

git revert d7f6712

然后进行更改。


如果您不想保留历史记录,则按如下所示进行2次提交

git reset --hard HEAD~2

然后执行新更改并执行

git push -f origin master 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。