我创建了一个功能分支,让我们在github上说feature/branch1
。
我为它创建了一个pull请求并将其合并。
当它到达我们的管道时,我们发现存在问题,我们使用Git上的Revert按钮将其恢复 这创造了一个" Revert"我们与主人合并的公关很好。
几周之后,发布其他合并到主人的PR,我们认为我们会恢复 - 恢复。这一次,我们进入了已关闭的Revert PR并尝试再次使用Revert按钮。但是我们收到了此错误消息
Sorry, this pull request couldn't be reverted automatically.
It may have already been reverted, or the content may have changed since it was merged.
如何完成此还原?
我希望拥有的最理想的情况是拥有一个包含还原版本的新分支,因此我可以进行进一步的更改并返回PR流程。
答案 0 :(得分:10)
你看到的错误是github的人工检查,我个人觉得不需要。您可以在本地恢复还原:
git fetch origin master
git checkout origin/master (or reset)
git revert <REVERT HASH>
git push origin master
这应该成功,与自恢复以来所做的更改发生模数冲突。
PS:实际上,错误可能是因为冲突。
答案 1 :(得分:1)
你可以尝试的是:
git reset --hard old_commit
)PR分支到您要恢复的提交(已还原的提交)git push --force
)该分支:将更新PR 这样,PR再次使用旧提交完成。
这是合并提交。 PR已经关闭并合并。
在这种情况下,如果您获取旧PR分支,则可以执行以下操作:
git log
(git log origin/old_pr_branch
)来自旧SHA1提交的新分支,代表您现在想要的内容
git checkout -b new_pr_branch old_sha1
推送到原点
git push -u origin new_pr_branch
然后,您可以使用正确的内容从该新分支制作新的PR。