1.概述

  今天查看Gmail,有网友私密我Gitlab的Pull Request工作流程,一直以为我写过这片博客,查看《Git和Gitlab协同工作》却发现遗漏了Pull Request这篇博客,今天将这篇文章补上。分享的内容如下所示:

  • 项目构建
  • 开发使用
  • Pull Request
  • Review代码

  下面开始今天的内容。

2.项目构建

  这里需要注意的时,如果我们构建的项目属于多人协作,推荐最好使用Group级别,这里我们先创建Group名称,如下图所示,我们构建一个Hadoop的Group组名。

  这里我们填写Group名称,并描述组名的含义等。然后创建成功后会显示如下界面。

  接下来,我们创建一个Hadoop的Project,基于Group级别的。如下图所示:

  其中Visibility Level的级别选择Internal级别。

  接下来,按照如下图所示,我们可以构建一个自己的项目。

  按照上述的步骤描述,我们可以成功导入一个项目,如下图所示:

  接下来,我们可以在所属的Group中Fork一份代码到自己的仓库地址当中,作为自己开发使用的仓库地址。如下图所示,点击右上角的Fork按钮即可将代码成功Fork到自己的Gitlab账号账号下:

3.开发使用

  在Fork代码到自己的Gitlab账号下后,我们可以在自己的Gitlab仓库下,创建属于自己的Branch分支,只要在最后提交的分支时,按照约定即可。如下图所示:

  最后,我们在使用Git命令将我们的分支提交到自己的Gitlab仓库中。

4.Pull Request

  在向管理员提交Pull Request时,我们需要注意一下事项。假如在完成了某个模块的功能,需要提交版本到线上,首先进行git fetch --all,进行仓库代码拉图,获取线上的版本代码,并且将线上的代码合并到自己本地到分支上,在解决冲突后。再次合并代码,若木有问题后就可以push到Gitlab中。接下来请求管理员把自己的仓库中的分支合并到原仓库的分支下,完成Pull Request工作流程,如下图所示:

  点击这里进入merge request,并且点击New Merge Request,进入到如下所示的界面:

  然后将自己的分支提交到主线版本中。需要注意的是,在提交一个Merge Request,请记得写清楚提交的理由信息,分配需要为你去做代码Review的工作者。

5.Review代码

  被Assign to或者at的同事都会收到邮件要求Review代码,那么也会进入到一个评论界面中,操作者就可以进行Code Review了。在这里,各位可以针对某一行提出自己的意见,也可以在评论里发表意见。如果没有问题,可以输入Looks good to me,如果各位都认为没问题,就可以Accept Merge Request了。于是就会看到The Merge Request has been accepted,这时也就提交到了主代码上。如果代码被评论过后,评论者也会收到消息,修改后Push的代码会自动提交到同一个Merge Request里。

6.总结

  各位也可以对自己关注的Project进行Star,这样在自己的消息中心收到动态信息,看到一些Project的最新动态。另外,希望大家注意要养成多Commit的好习惯。

7.结束语

  这篇博客就和大家分享到这里,如果大家在研究学习的过程当中有什么问题,可以加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!

Gitlab - Pull Request的更多相关文章

  1. Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码

    前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...

  2. 【转】GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?

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

  3. git pull request

    如何发 PR 以下以 wiki-pages 为例 把项目 fork 到自己名下,然后 clone 到本地 git clone git@code.xiaojukeji.com:yexiliang/wik ...

  4. [技术博客]在团队中使用Pull Request来管理代码

    在团队中使用Pull Request来管理代码 前言 在参加多人共同开发项目,且选用Git作为代码托管工具的时候,我们不免会遇到分支冲突.覆盖.合并等问题.显然,因为同一个仓库是属于大家的,所以每个人 ...

  5. 解决托管在Windows上的Stash的Pull request无法合并的问题

    最近尝试合并一个托管在Windows的Stash系统中的pull request时,发现合并按钮被禁用,显示有冲突不能合并,但是在diff页面中没有现实冲突,而且代码实际上并没有任何冲突. 后来在这篇 ...

  6. 庆祝下,提交了第一个ceph pull request。实现了从0到1的突破

    庆祝一下!经过社区老司机的带路,昨天提交了第一个ceph pull request.实现了从0到1的突破,希望再接再厉提交更多代码到社区,为社区发展贡献一点自己力量. 提交的第一个被社区fix的bug ...

  7. github的pull request是指什么意思?有什么用处

    github的pull request是指什么意思? 来看看某乎某位阿牛的理解,多么的简单粗暴! 我尝试用类比的方法来解释一下 pull reqeust.想想我们中学考试,老师改卷的场景吧.你做的试卷 ...

  8. 使用 VisualCode + iTerm2 提交github的Pull Request

    VisualCode集成github功能,是程序猿参与开源项目的利器.相比Sublime简单了很多(插件安装繁琐,比如你试试在Sublime2 安装gosublime,这里有坑; Sublime 3修 ...

  9. git 上的pull request 是什么意思?

    1.git 上有常见的pull request 功能 2.pull request 的含义 解释一:    有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Gi ...

随机推荐

  1. uclibc和glibc的差别

    uClibc和Glibc并不相同,两者有许多不同之处,而且以下不同有可能给你带来一些问题. 1. uClibc比Glibc小,虽然uClibc和Glibc在已有的接口上是兼容的,而且采用uClibc编 ...

  2. R语言︱缺失值处理之多重插补——mice包

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:缺失值是数据清洗过程中非常重要的问题 ...

  3. dojo表格分页插件报错

    dojo表格分页插件报错 (1)dojo/parser::parse() error ReferenceError {stack:(...),message:"layout is not d ...

  4. Java Web项目部署Tomcat运行出错

    1.在部署Java Web项目的过程中,启动Tomcat出现报错提示 具体报错如下: Could not load the Tomcat server configuration at \Server ...

  5. 创建数据库表默认字段封装SQL

    declare @Table_Name varchar(500) declare @strSQL varchar(500) set @Table_Name='UserInfo' --在此处设置要创建的 ...

  6. Windows--常见端口号

    windows--常见端口号  此文档仅供参考,相关端口作用以国际标准为准. 端口:0 服务:Reserved 说明:通常用于分析操作系统.这一方法能够工作是因为在一些系统中"0" ...

  7. 易理解java代码8皇后问题

    马上就要蓝桥杯比赛了,我这些算法还是不会,确实有点慌,今天一天早上睡到很晚不愿起床,然后才开始研究8皇后问题.这也是典型的回溯与递归问题.其实本质上和马踏棋盘问题非常类似,八皇后问题呢,就是要判断主对 ...

  8. 异常-----freemarker.template.TemplateException: Macro select has no such argument

    1.错误描述 六月 25, 2014 11:32:49 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template proc ...

  9. C#技术点--修改系统时间

    C#的System.DateTime类提供了对日期时间的封装,用它进行时间的转换和处理很方便,但是我没有在其中找到任何可以用来修改系统时间的成员.用过VC.VB等的朋友可能知道,我们可以调用Win32 ...

  10. [APIO2015]八邻旁之桥

    题面在这里 sol 这是一个\(Splay\)的题解 首先,如果一个人的家和办公室在同一侧,我们可以直接预处理; 如果不在同一侧,也可以加上1(当然要过桥啦) 当k==1时 我们设桥的位置为\(pos ...