官网
从Gitlab官网的图中可以看到Gitlab支持软件开发的全流程。
Gitlab环境搭建
由于准备在内网中使用,所以使用的是开源版。
网上有很多的搭建方式,但是为了简单直接采用官网的Docker镜像进行搭建。
可以访问Docker Hub或者直接使用docker search gitlab来进行搜索
查找镜像
根据STARS和描述选择gitlab/gitlab-ce
docker run -d --name gitlab -p 8443:443 -p 9000:9000 -p 8022:22 --restart always -v /home/zx/data/gitlab/config:/etc/gitlab -v /home/zx/data/gitlab/logs:/var/log/gitlab -v /home/zx/data/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
使用docker运行该镜像,简单解释一下各个参数的作用:
--name:指定容器的名称
-p:端口映射
—restart always:出现异常后自动重启
-v:挂载至本地位置
执行完成后等待一段时间就可以通过页面访问本地搭建的Gitlab了
首页
自行注册一个账号后就可以登录了。
登录之后点击New project就可以自行创建一个新的项目了
开始页面
Merge requests
首先介绍合并请求这一个功能,如果你是项目的管理者, 可以进入Settings中找到Merge requests的配置
配置界面
请求配置
翻译一下之后:
请求配置-中文版
由于没有强制的一支线开发的要求,所以不采用变基的方式进行合并,所以选择第一个选项合并提交
下面的选项看上去蛮有用的,所以全钩上了
发起一次合并请求
首先将代码从远端克隆至本地
克隆代码
本地操作
git clone http://123.56.13.233:9000/z05035/gitlab_test.git
现在项目已经在本地了,由于是刚克隆下来的,所以默认在master分支上
我们从当前的的节点拉出一个新的分支tmp,并切换至tmp分支
git branch tmp
git checkout tmp
切换分支
下面在tmp分支上进行修改
vim 1.py
git add 1.py
git commit -m 'add for'
git push --set-upstream origin tmp
分支操作
根据提示信息一步步完成分支的创建,修改,提交
下面来到gitlab服务器发起合并请求
合并请求
gitlab自动识别到我们新建了一个分支,所以它会有一行蓝色的创建合并的语句,以下分别是中英文的提交请求页面
合并请求_中
合并请求_英
写一下描述就可以提交了,大部分内容没有特殊需求可以不用更改
请求
点击Merge就可以合并了不过这样就自己的项目自己合并没什么意义,所以现在新建一个用户来进行提交
把新创建的用户加入到项目的成员中,并且身份是开发者
添加用户
身份信息
成员表中就增加了新创建的那个用户了。
下面用开发者账户发起一个合并请求
发起合并
可以看到请求无法直接被合并,需要有写权限的用户才能合并,切换回管理员账户进行查看,发现按钮变绿了。可以正常合并和提交了。
ok.gif