无需再次执行git push,如何获取GitLab合并请求URL?
无需重新推送代码获取GitLab合并请求URL的方法
问题场景
提交代码执行git push后,GitLab服务器会返回一条包含合并请求(MR)创建链接的提示,但如果当时未保存该链接,后续无新代码可推送时,执行git push只会返回Everything up-to-date,无需重新推送代码的情况下,可通过以下方式再次获取该URL:
- 手动构造URL
GitLab的MR创建链接遵循固定格式,只需替换项目路径和URL编码后的分支名即可:
https://gitlab.xxxxx.net/[你的项目路径]/-/merge_requests/new?merge_request%5Bsource_branch%5D=[URL编码后的分支名]
例如分支为feature/xxxxx,URL编码后为feature%2Fxxxxx,替换后即可得到完整链接。分支名的URL编码可通过命令行快速生成:
python -c "import urllib.parse; print(urllib.parse.quote('你的分支名'))"
- 使用GitLab官方CLI工具(glab)
若已安装glab(GitLab官方命令行工具),直接执行以下命令即可自动生成并打开MR创建页面,或输出对应URL:
glab mr create
添加--draft参数可创建草稿状态的MR:
glab mr create --draft
- 通过GitLab网页端获取
登录GitLab对应项目页面,点击左侧菜单栏的「合并请求」→「新建合并请求」,在「源分支」下拉框中选择目标分支,此时浏览器地址栏的URL即为所需的MR创建链接,直接复制即可。
内容的提问来源于stack exchange,提问作者J-L
相关产品推荐
相关产品推荐

