为了保持线性历史,我使用以下方法来 merge 更改,而不是依赖于 github 的 merge 功能:
git checkout -b feature_x user/feature_x
git rebase master
git checkout master
git merge --no-ff feature_x
git push origin master # On Github: PR gets merged and closed
git branch -D feature_x
上面的工作非常好,但在我必须手动解决冲突的情况下,PR 不会自动显示为 merge 在 Github 上,我必须手动关闭 PR。
是否有更好的方法来 merge 自动显示 Github PR 已 merge 和关闭的 pull 请求?
最佳答案
作为onlythefinestwilldo已经正确地指出,一旦一个分支 rebase ,它包含一组不同的提交,这意味着原始 pull 请求不会受到影响。
为了克服这个问题,我们改变了我们的流程:现在,我们在将更改 merge 到 master 时不 rebase 分支。如果无法 merge 更改,则要求 pull 请求的创建者重新设置其分支并更新 pull 请求。虽然不方便,但这是确保 pull 请求在 merge 时自动关闭的唯一方法。
关于git - rebase 后手动 merge 的 pull 请求不会在 Github 上显示为已 merge ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27740369/