能否通过命令行发起GitHub Pull Request以符合分支审查规则?
可以用命令行发起GitHub Pull Request!
当然没问题——GitHub提供了官方的命令行工具 GitHub CLI(gh),完全可以在终端完成PR的创建、查看甚至审核操作,不用再切换到网页端。结合你的场景,我分两种情况给你讲操作步骤:
情况1:遵循最佳实践(推荐)
通常我们不会直接在本地master分支合并功能代码,正确的流程应该是在feature分支开发完成后,推送到远程,再发起PR到master。用gh的操作步骤如下:
- 确保你已经安装了
gh工具,如果没装,根据你的系统用包管理器安装就行(比如macOS用brew install gh,Ubuntu用sudo apt install gh)。 - 先登录GitHub账号:
按照提示选择GitHub.com、HTTPS协议,然后授权登录即可。gh auth login - 切换到你的
feature分支,确保代码已经推送到远程:git checkout feature git push origin feature - 发起PR到
master分支:
执行后会提示你填写PR标题、描述,按提示完成后,PR就直接创建好了,和网页端创建的效果完全一样,会触发仓库的审查策略。gh pr create --base master --head feature
情况2:针对你当前的场景(本地master已合并更改)
你现在本地master分支已经合并了feature的更改,直接推master会触发保护分支错误。这时候可以先把本地master的更改推到一个新的远程分支,再从这个分支发起PR:
- 先创建一个新的本地分支(比如叫
feature-to-master),基于当前本地master的状态:git checkout -b feature-to-master master - 把这个新分支推送到远程:
git push origin feature-to-master - 用
gh发起PR到master:
同样填写标题和描述后,PR就创建成功了,等审核通过后,维护者可以合并到gh pr create --base master --head feature-to-mastermaster,之后你再拉取远程master的更新即可。
补充:其他实用命令行选项
gh pr create还有很多便捷参数,比如:
--title "你的PR标题":直接指定标题,跳过交互式输入--body "PR的详细描述":直接填写PR的说明内容--reviewer username1,username2:直接指定需要审核的人员--draft:创建草稿PR,标记为还未准备好正式审核
这样你就完全可以在命令行完成PR的发起,不用再依赖网页端啦!
内容的提问来源于stack exchange,提问作者Harry
相关产品推荐
相关产品推荐

