如何通过CLI向Bitbucket提交Git Pull Request?
太懂这种手动重复操作的烦躁了!每次开浏览器点进Bitbucket、选分支填信息,简直是浪费时间。下面给你两种实用的CLI方案,轻松实现从develop向master提交PR:
方法一:使用Bitbucket官方CLI工具
这个工具是官方维护的,操作直观,适合日常快速创建PR:
安装CLI
用pip就能快速安装(确保你已经安装了Python和pip):pip install bitbucket-cli配置认证信息
因为Bitbucket现在禁用了密码直接登录,你需要先在个人设置里生成一个App密码(权限至少勾选「Pull requests」的读写权限)。然后运行配置命令:bitbucket configure按照提示输入你的Bitbucket用户名、生成的App密码,以及服务器地址(Bitbucket云的话填
https://api.bitbucket.org/2.0即可)。一键创建PR
直接运行下面的命令,替换标题、描述、审核人等信息:bitbucket pull-request create \ --src develop \ --dest master \ --title "Merge develop into master" \ --description "Automatically created via CLI - 这里填你的备注内容" \ --reviewers "张三,李四"参数说明:
--src:指定源分支(这里是develop)--dest:指定目标分支(这里是master)--title:PR的标题--description:PR的备注内容--reviewers:需要添加的审核人,用逗号分隔用户名
方法二:直接调用Bitbucket REST API(适合高度自定义)
如果不想安装额外工具,用curl直接调用API也是个好办法,灵活性更高:
准备认证信息
同样需要先生成App密码(权限要求和上面一致)。构造并执行curl命令
替换命令中的占位符(你的用户名、App密码、团队名、仓库名等),然后运行:curl -X POST -u "你的Bitbucket用户名:你的App密码" \ https://api.bitbucket.org/2.0/repositories/你的团队名/你的仓库名/pullrequests \ -H "Content-Type: application/json" \ -d '{ "title": "Merge develop into master", "description": "Automatically created via CLI - 自定义备注", "source": { "branch": { "name": "develop" } }, "destination": { "branch": { "name": "master" } }, "reviewers": [ {"username": "张三"}, {"username": "李四"} ] }'
额外小技巧
- 可以把常用的命令写成shell脚本(比如
create-dev-to-master-pr.sh),每次运行脚本就能快速创建PR,连参数都不用重复输; - 确保你的账户有对应仓库的PR创建权限,不然会返回权限错误;
- App密码要妥善保管,不要明文写在脚本里,可以用环境变量来传递,比如
export BB_AUTH="用户名:密码",然后命令里用-u "$BB_AUTH"。
内容的提问来源于stack exchange,提问作者renatodamas
相关产品推荐
相关产品推荐

