• Gitlab光速发起Merge Request


    前言

    在我们日常开发过程中需要经常使用到Merge Request,在使用过程中我们需要来回在开发工具和UI界面之前来回切换,十分麻烦。那有没有一种办法可以时间直接开发开工具中直接发起Merge Request呢?

    答案是有的。

    使用 Git 命令方式创建 Merge Request

    我们其实可以直接通过git push命令来实现创建Merge Request,完整命令实例如下:

    git push origin feature/test_mr:feature/test_mr \
      --set-upstream \
      -o merge_request.create \
      -o merge_request.target=master \
      -o merge_request.remove_source_branch \
      -o merge_request.label=fea4t \
      -o "merge_request.title=fea4t(web) XM2231501-7127 插件测试" \
      -o "merge_request.description='

    背景:

    http://jira.xxx.net/browse/XM2231501-7127

    修改:

    1. 插件测试

    影响:

    '"
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    命令解释:

    • git push origin feature/test_mr:feature/test_mr:推送本地分支 feature/test_mr 到远程仓库 origin 的 feature/test_mr 分支。
    • –set-upstream:将目标分支设置为当前分支的上游分支。
    • -o merge_request.create:创建合并请求。
    • -o merge_request.target=master:设置目标分支为 master。
    • -o merge_request.remove_source_branch:合并后删除源分支。
    • -o merge_request.label=fea4t:添加标签 fea4t。
    • -o “merge_request.title=fea4t(web) XM2231501-7127 插件测试”:设置合并请求标题。
    • `-o “merge_request.description=‘1. 插件测试’”:设置合并请求描述。

    通过执行命令可以直接创建Merge Request,命令返回如下信息:

    remote: 
    remote: View merge request for feature/test:
    remote:   http://git.xxx.net/xxx-project/xxx/-/merge_requests/6
    remote: 
    remote: 
    remote: Project 'hr-ops-group/xxx' was moved to 'xxx-project/xxx/xxx'.
    remote: 
    remote: Please update your Git remote:
    remote: 
    remote:   git remote set-url origin ssh://git@git.xxx.net:8011/hr-xxx/xxx/xx.git
    remote: 
    remote: 
    To ssh://git.xxx.net:8011/hr-ops-xx/xxx.git
       b1d535b..08a4a51  feature/test -> feature/test
    分支 'feature/test' 设置为跟踪来自 'origin' 的远程分支 'feature/test'
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    通过上面的信息我们可以看到系统已经自己给我们创建了一个MR http://git.xxx.net/xxx-project/xxx/-/merge_requests/6

    光速发起Merge Request

    但是这种构建命令的方式看起来比UI操作还麻烦,并且很容易出错,有没有更加简单的办法呢?在这里给大家推荐一款Idea插件GitFlowPlus。他支持直接通过图形化方式在IDEA中直接发起MR,如果遇到代码冲突还可以在本地IDEA中直接解决,十分方便,使用示例:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PvwBhAuq-1663857594810)(https://github.com/xiaolyuh/mrtf-git-flow-4idea/blob/master/images/merge-request.gif)]

    GitFlowPlus,可以直接在IDEA插件市场上安装,目前已经支持2018-2023所有IDEA版本。该插件还支持光速提测,光速打Tag等。

    版本要求

    如果您要使用自动发起MR这个功能,那么需要保证你的Gitlab版本在11.10之上。

    在这里插入图片描述

    参考

    GitFlowPlus
    极狐-推送选项

  • 相关阅读:
    人大女王金融硕士项目——无论在任何时候,都不必怀疑努力的意义
    SpringMvc入门小案例
    JUC-不可变
    Mybatis
    代码随想录算法训练营第三十二天 | LeetCode 122. 买卖股票的最佳时机 II、55. 跳跃游戏、45. 跳跃游戏 II
    Node-Express框架的用法
    pv空间回收显示失败
    2022 极术通讯-基于安谋科技 “星辰” STAR-MC1的灵动MM32F2570开发板深度评测
    电动工具——电钻驱动方案设计
    [网鼎杯 2018]Comment
  • 原文地址:https://blog.csdn.net/xiaolyuh123/article/details/136715861