Gitlab - Pull Request
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的更多相关文章
- Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码
前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...
- 【转】GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?
在 GitHub 上混久了,经常听到 Pull Request,在 GitLab 上混久了,则经常 提起 Merge Request ,然而它们之间有不同吗?为什么要用两个不同的名称? 要追溯这两个名 ...
- git pull request
如何发 PR 以下以 wiki-pages 为例 把项目 fork 到自己名下,然后 clone 到本地 git clone git@code.xiaojukeji.com:yexiliang/wik ...
- [技术博客]在团队中使用Pull Request来管理代码
在团队中使用Pull Request来管理代码 前言 在参加多人共同开发项目,且选用Git作为代码托管工具的时候,我们不免会遇到分支冲突.覆盖.合并等问题.显然,因为同一个仓库是属于大家的,所以每个人 ...
- 解决托管在Windows上的Stash的Pull request无法合并的问题
最近尝试合并一个托管在Windows的Stash系统中的pull request时,发现合并按钮被禁用,显示有冲突不能合并,但是在diff页面中没有现实冲突,而且代码实际上并没有任何冲突. 后来在这篇 ...
- 庆祝下,提交了第一个ceph pull request。实现了从0到1的突破
庆祝一下!经过社区老司机的带路,昨天提交了第一个ceph pull request.实现了从0到1的突破,希望再接再厉提交更多代码到社区,为社区发展贡献一点自己力量. 提交的第一个被社区fix的bug ...
- github的pull request是指什么意思?有什么用处
github的pull request是指什么意思? 来看看某乎某位阿牛的理解,多么的简单粗暴! 我尝试用类比的方法来解释一下 pull reqeust.想想我们中学考试,老师改卷的场景吧.你做的试卷 ...
- 使用 VisualCode + iTerm2 提交github的Pull Request
VisualCode集成github功能,是程序猿参与开源项目的利器.相比Sublime简单了很多(插件安装繁琐,比如你试试在Sublime2 安装gosublime,这里有坑; Sublime 3修 ...
- git 上的pull request 是什么意思?
1.git 上有常见的pull request 功能 2.pull request 的含义 解释一: 有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Gi ...
随机推荐
- XAF_GS_02_创建第一个XAF项目
上一节我们讲解了如何安装XAF环境,这次我们要开始创建一个自己的XAF项目. Setp 1 第一步打开你的Visual Studio,新建项目,如下图所示,选择DevExpress XAF,选择好你的 ...
- ImportError: No module named 'Box2D' 解决办法
ImportError: No module named 'Box2D'这个问题是由于缺少gym Openai gym是一个用于开发和比较RL算法的工具包,与其他的数值计算库兼容,如tensorflo ...
- 利用squid 搭建简单的透明代理服务器
环境介绍 虚拟主机1: ip eth0192.168.0.100/24 eth1: 200.168.0.100/24 虚拟主机2(模拟外网) 200.168.0.109/24 (运行web serve ...
- MySQL更改数据库表的存储引擎
MySQL更改数据库表的存储引擎 1.查看表的原存储引擎 show create table user; 'user', 'CREATE TABLE `user` (\n `id` int(11) N ...
- The struts dispatcher cannot be found
1.错误描述 严重:Servlet.service() for servlet jsp threw exception The struts dispatcher cannot be found.Th ...
- Python实现常用的数据结构
Python中的数据结构 #巧用Python列表特性实现特定数据结构 #栈实现stack = []stack.push(x)stack.pop()stack[-1] #队列实现from colle ...
- Windows10 + Matlab2013 mex C++ 调用gsl
最前面啰嗦一句,matlab默认编译c的编译器有点奇怪,会出现引用.h却找不到相应函数的问题,解决方法是把.c全部都改成.cpp!血的教训! 下面进入正题~~ 由于Matlab调用的C函数中引用了GS ...
- python之文件读写详解
打开文件 函数open() 参数说明: file:文件路径 mode: 文件的读写方式,默认'r',只读方式: buffering:设置缓冲策略,0用于二进制文件,1为行缓冲,用于文本模式:默认二进制 ...
- JVM内存分析
1.java内存模型分析 java虚拟机运行时数据存储区域包括线程隔离和线程共享两类,整个PC的内存图如下所示: 下面对以上内存区域说明: 1.1 register和cache 当代计算机一般有多个c ...
- DirectSound---音效使用
DirectSound以DMO(DirectX Nedua Objects)的方式提供了对原始音频数据的处理,开发者能够通过VC6.0里的Audio Effect DMO Wizard来开发自定义的D ...