【问题标题】:Use of git revert for reverting two commits [duplicate]使用 git revert 恢复两个提交 [重复]
【发布时间】:2021-01-22 07:08:47
【问题描述】:

我需要恢复以下两个提交:

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 git-revert


【解决方案1】:

是的,只需按时间倒序恢复它们

git revert 4736674 
git revert d7f6712

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

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

【讨论】:

    【解决方案2】:

    如果您想保留历史记录,请按照以下命令,

    git revert 4736674
    

    git revert d7f6712
    

    然后进行更改。


    如果您不想保留历史记录,请按以下方式进行 2 次提交

    git reset --hard HEAD~2
    

    然后执行您的新更改并执行

    git push -f origin master 
    

    【讨论】:

      猜你喜欢
      • 2011-10-11
      • 1970-01-01
      • 2015-09-02
      • 2019-03-09
      • 2011-06-15
      • 2018-11-10
      • 2016-06-23
      • 2021-04-13
      • 2011-11-07
      相关资源
      最近更新 更多