在没有 Web 界面的情况下合并并推送到受保护的分支
Merge and push to protected branch without the web interface
在 bitbucket 和 github 上有受保护的分支,
全部审核通过后,
有没有办法在本地仅使用 git 并避开网站来拉、合并和推送受保护的分支?
此外,避免使用诸如 --force
之类的 buypass 以确保这些检查确实已通过。
bitbucket
- 至少需要 x 次成功构建
- 至少需要 x 次批准
git中心
- 需要在合并前通过状态检查
- 合并前需要拉取请求审查
来自 GitHub Documentation:
要将拉取请求合并到受保护的分支并启用所需的拉取请求审查,拉取请求必须符合审查政策。在此政策中,拉取请求:
- 必须有一个批准的评论
- 不能有任何要求更改的评论
如果满足上述条件,您可以将拉取请求合并到受保护的分支。只需使用
# 123 is the pull request number
git fetch origin pr/123/head:newbranch
git checkout protected_branch
git merge newbranch
git branch -D newbranch
由于该分支是受保护的分支,您不能直接提交给它。您只能通过拉取请求提交给它。在受保护的分支中也严格禁止使用 --force
。
在 bitbucket 和 github 上有受保护的分支, 全部审核通过后, 有没有办法在本地仅使用 git 并避开网站来拉、合并和推送受保护的分支?
此外,避免使用诸如 --force
之类的 buypass 以确保这些检查确实已通过。
bitbucket
- 至少需要 x 次成功构建
- 至少需要 x 次批准
git中心
- 需要在合并前通过状态检查
- 合并前需要拉取请求审查
来自 GitHub Documentation:
要将拉取请求合并到受保护的分支并启用所需的拉取请求审查,拉取请求必须符合审查政策。在此政策中,拉取请求:
- 必须有一个批准的评论
- 不能有任何要求更改的评论
如果满足上述条件,您可以将拉取请求合并到受保护的分支。只需使用
# 123 is the pull request number
git fetch origin pr/123/head:newbranch
git checkout protected_branch
git merge newbranch
git branch -D newbranch
由于该分支是受保护的分支,您不能直接提交给它。您只能通过拉取请求提交给它。在受保护的分支中也严格禁止使用 --force
。