在 GitLab 中从命令行合并 Merge 请求

Merging a Merge request from command line in GitLab

我正在尝试找到一种从命令行在 GitLab 中合并合并请求的方法。

有谁知道如何实现这一点而不是从 GUI 界面合并它们。

非常感谢任何指点。 谢谢!

您可以像合并任何其他分支一样合并它:

git checkout target-branch
git merge feature-branch
git push

Gitlab UI 然后会将合并请求显示为已合并。

gitlab API 允许我们这样做。

https://docs.gitlab.com/ee/api/merge_requests.html#accept-mr

需要使用 git CLI 版本 2.10+。资料来源:First time GitLab & CI/CD workshop with Michael Friedrich @ 1:01:20

快速测试示例,根据上述视频稍作修改。

# create a small test branch
git checkout master
git pull
git checkout -b "Testing_Create_MR_from_git_cmdline"
echo "Please delete this file" > BogusPleaseDelete.txt
git add -A
git commit -m "Testing create MR from Git command line"

# Create Gitlab MR from Git CLI
git push -u origin HEAD \
  -o merge_request.create \
  -o merge_request.title="DRAFT: $(git branch --show-current)" \
  -o merge_request.description="This MR is created by git command line, using $(git version), OS = $(lsb_release -d)" \
  -o merge_request.target=master \
  -o merge_request.remove_source_branch \
  -o merge_request.squash