1.导读
本教程主要讲解了GitLab在项目的环境搭建和基本的使用,可以帮助大家在企业中能够自主搭建GitLab服务,并且可以GitLab中的组、权限、项目自主操作。
- GitLab简介
- GitLab环境搭建
- GitLab基本使用(组、权限、用户、项目)
2.GitLab简介
GitLab是整个DevOps生命周期的第一个应用程序。其使用与GitHub类似,并且提供了许多DevOps相关的功能。GitLab提供无与伦比的可见性,更高的效率和全面的治理。这使得软件生命周期加快了200%,从根本上提高了业务速度。
官方网站:https://about.gitlab.com/
安装git-lab
此处以centos7为例。
1)安装并配置依赖项,同时打开HTTP访问和SSH访问
```
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
```
2)安装GitLab软件包
```
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
```
3)初始化GitLab配置```
sudo gitlab-ctl reconfigure
```
其他命令
```
启动 gitlab 服务
gitlab-ctl start
停止 gitlab 服务
gitlab-ctl stop
```
4.GitLab使用
4.1)创建组及组权限配置
在GitLab组相当于团队,在项目开发过程中,每个组有不同的组员和对应的不同的子项目,对项目组用户开放项目的访问。
在GitLab首页选择Create a Group,进入创建页面,输入群组名称,群组URL,群组描述,同时还需选择可见性级别,其相当于设置组权限。
在可见性级别中包含三种:
私有:群组及其项目只能由成员查看
内部:任何登录的用户都可以查看该群组和任何内部项目
公开:不进行身份验证,可以随意查看。
当输入完信息,点击创建群组即可完成组的创建。
4.2)创建用户及用户权限配置
4.2.1)创建用户
组有了之后,还需要向组内添加项目组成员。
当点击【新用户】后,会进入到添加用户页面,需要输入Name、Username、和Email。最后点击create user即可。
接着以管理员身份,重新进入到成员列表页面,此时已经可以看到新增了一个【member1】用户。接着点击 【编辑】,设置该用户的登录密码。
4.2.2)用户进组,及用户权限指定
现在有了组和用户后,可以将指定用户添加到组中。
当进入到组的详情页面中之后,即可将指定用户添加到组中。首先需要先确定当前被操作的用户。接着需要指定当前用户的身份权限。
身份对应权限,总共有五个选项,分别为:
- Guest:可以创建issue、发表评论,不能读写版本库
- Reporter:可以克隆代码,不能提交,QA、PM可以赋予这个权限
- Developer:以克隆代码、开发、提交、push,RD可以赋予这个权限
- Maintainer:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心RD负责人可以赋予这个权限
- Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组leader可以赋予这个权限
可以根据实际人员情况,进行人员角色权限分配。此处选择【Developer】
4.3)创建项目
GitLab核心作用是作为代码仓库,因为它可以像GitHub一样进行代码托管。首先需要创建好项目,然后把项目指派该开发组。
当进入到新建项目页面,GitLab提供了三种创建方式:空白项目、从模板创建、导入项目。此处使用【空白项目】。对于权限仍然是三个,与组权限相同。