【发布时间】:2017-07-21 18:57:51
【问题描述】:
我们在 GitHub 上保护了我们的开发分支,这样下游的任何人都不能直接推送他们的提交。提交需要经过特定的功能分支并通过拉取请求合并。
出现了这样一种情况,即功能分支被合并到开发分支中(经过适当的审查和更改),我们需要稍后恢复它(可能是由于需求的更改)。如果我尝试在下游恢复合并提交,它将不允许我推送,因为分支受到保护。我记得当我们合并分支时 GitHub 提供了恢复按钮。但不知何故,我现在无法看到(或找到)按钮。我们需要恢复提交的优先级,因此我们暂时从开发分支中删除了保护并推送了恢复提交(最丑陋的黑客攻击)。
还有其他更好的选择来从受保护的分支恢复提交吗?也许我遗漏或误解了一些 GitHub 功能。
还有一个场景是,如果我在合并后从 GitHub 中删除了分支,那我将如何恢复它呢?
【问题讨论】:
-
您是否尝试过使用
git revert并从下游分支发出新的拉取请求?git revert应该在上游 HEAD 之前创建一个新提交 -
@rink.attendant.6:我没有尝试过,但它看起来绝对是源自下游的优雅解决方案之一。看起来也很简单,我在想这些东西! GitHub上有解决方案吗?我可以使用它,因为人们点击按钮比记住和编写命令更可取。
标签: git github merge protected git-revert