码迷,mamicode.com
首页 > 其他好文 > 详细

GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?

时间:2020-06-17 20:26:57      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:提交   href   方式   完全   分布   tor   问题:   意思   集中式   

在 GitHub 上混久了,经常听到 Pull Request,在 GitLab 上混久了,则经常 提起 Merge Request ,然而它们之间有不同吗?为什么要用两个不同的名称?

要追溯这两个名称,需要追溯 GitHub 和 GitLab 引以为傲的 git 工作流。这也是本文参考链接中一定要附上 GitLab 工作流的重要原因。

众所周知 git 是一个分布式的版本管理系统,但为了团队成员之间能够高效地协作,必须有至少一个服务器用于给团队所有成员之间同步代码。而这一点又有点类似于集中式的版本管理。

对于项目的核心成员,集中式版本管理和分布式版本管理贡献代码的方式并没有多大差异(这里不要纠结个人使用层面的差异,只谈论为仓库贡献代码的方式)。但对于非项目核心成员来说,集中式的版本管理就非常痛苦了,因为他们找不到方式来提交自己的代码(请忽略低效的发邮件补丁吧……)。然而分布式版本管理则解决了这个问题:非项目核心成员可以克隆仓库,这样就得到了一个自己具有完全读写权限的仓库,贡献的代码可以完全同步到这个具有完全读写权限的仓库中。

为了让非核心成员提交的代码被核心成员接纳,非核心成员会向核心成员提出“申请(Request)”去自己的仓库指定分支中“拉取(pull)”最新的修改,这便是 Pull Request 的来源。

那么 Merge Request 又是什么呢?GitLab 对此的解释是——一样的,没有区别。Merge 只是在强调最后的那个动作“合并(Merge)”。

  • GitHub、Bitbucket 和码云(Gitee.com)选择 Pull Request 作为这项功能的名称
  • GitLab 和 Gitorious 选择 Merge Request 作为这项功能的名称

 

举个可能不那么贴切的例子:

出门买菜 = PR (强调开始的动作)

下楼买菜 = MR (强调后面的动作)

其实意思都是一样的

GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?

标签:提交   href   方式   完全   分布   tor   问题:   意思   集中式   

原文地址:https://www.cnblogs.com/tony-g/p/13154104.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!