Gitlab初步指南
概念(概念为转载,侵删)
Gitlab和gibhub的区别:
GitHub作为开源代码库及版本控制系统,拥有超过900万的开发者用户,目前仍然是最火的开源项目托管系统。GitHub同时提供公共仓库和私有仓库,但如果要使用私有仓库,是需要付费的。
而GitLab解决了这个问题,你可以在上面创建私人的免费仓库。
GitLab让开发团队对他们的代码仓库拥有更多的控制,相比于GitHub,它有不少的特色:
允许免费设置仓库权限;允许用户选择分享一个project的部分代码;允许用户设置project的获取权限,进一步的提升安全性;可以设置获取到团队整体的改进进度;通过innersourcing让不在权限范围内的人访问不到该资源。
从代码私有性方面来看,有时公司并不希望员工获取到全部的代码,这个时候GitLab无疑是更好的选择。但对于开源项目而言,GitHub依然是代码托管的首选。
1.Gitlab服务器的安装
1.1运行环境
操作系统:Ubunto 18.04
1.2安装gitlab包
首先打开命令行,安装GitLab包
输入如下指令
sudo apt-get install gitlab-ee
下载完成后,执行命令
sudo gitlab-ctl reconfigure
出现下图就是安装完成!
安装完成
2.配置gitlab
2.1启动gitlab服务器
执行sudo gitlab-ctl start
效果如下
Gitlab服务器启动成功
2.2修改gitlab的端口和地址
编辑gitlab.rb文件
sudo vim /etc/gitlab/gitlab.rb
将如下数据进行更改
external_url 'http://gitlab.example.com'
比如说更改为
external_url 'http://192.168.1.188:8001
其中,192.168.1.188是安装了gitlab的这台电脑的IP,端口只要不冲突就行
更改之后,需要执行如下代码
sudo gitlab-ctl reconfigure
最后,在浏览器中访问gitlab,发现已修改成功,需要使用192.168.1.188:8001来访问
2.3管理员设置密码并登录
浏览器直接输入gitlab服务器ip,如果没有修改端口号,那么默认采用80端口
第一次进入,需要输入管理员账号的密码,以方便后期的管理。
修改密码
输入好之后,就可以用管理员进行登录,账号是root,密码就是你刚才输入的密码
登录后界面如下
gitlab欢迎界面
3.使用gitlab
3.1修改密码
右上角点击头像右侧的 --> setting(设置) ------ 在左侧菜单栏找到Password(密码) -------修改密码-------Save password(保存密码)。
Tips:点击GitLab的logo,可以从任何界面回到本页
3.2修改语言
右上角点击头像右侧的 --> setting -->右侧主要设置里找到
选择简体中文,点最下面,然后刷新页面.
3.2取消注册功能
鉴于用户的账号采用统一分配的策略,那么需要取消用户的注册功能,账号由管理员分配
- 以管理员身份登录进GitLab平台
- 点击管理中心
,进入如下页面
管理中心
- 点击设置--通用,右侧界面有一个注册限制选项,点击展开,把【Sign-up enabled】的勾选框去掉,即取消掉注册功能。
- 然后滚动到页面最底端,点击【Save】保存按钮,将配置保存起来。
- 退出登录,查看效果
如图所示,注册功能已经被屏蔽掉了
没有注册功能的登录界面
3.3项目管理
3.3.1新建项目
点击上方的admin area(扳手),进入管理中心
项目,用户,组
这三个部分相信用过svn的朋友们都清楚是什么了.
点击new project来新建项目
新建项目的配置界面
创建时可以选择在自己用户下创建或者某个群组内创建
- 1. 项目名称,项目名称可以为字母、数字、空格、下划线、中划线和英文点号组
成,且必须以字母或数字开头,不能使用中文
- 2. 项目描述
- 3.可见性(库类别)
私有库:只有被赋予权限的用户可见
内部库:登录用户可以下载
公开库:所有人可以下载
- 根据实际情况填写完各项之后,点击创建项目(4),项目创建成功
项目创建成功
3.3.2编辑或删除项目
点击上方扳手,在主页左边菜单栏-------->点击Project(项目)
选择相应项目点击右侧的edit进行编辑
3.4用户管理(管理员使用,非管理员跳过此步骤)
3.4.1新建用户
点击顶端的Admin Area(扳手)按钮
可以进入管理页面,点击new User 按钮
新建用户的信息如下:
- 姓名(可以是中文)
- 用户名(可以为字母、数字、空格、下划线、中划线和英文点号组成,且必须以字母或数字开头,不能使用中文)
- 邮箱地址(首次接收密码)
- 建项目的数量限制
- 是否可以创建组
- 是否是管理员
- 选填内容(个人联系方式)
3.4.2编辑/删除用户
左侧菜单栏点击用户即显示如下界面,
编辑和删除用户界面
3.5组管理(管理员使用,非管理员跳过此步骤)
3.5.1新建组
菜单栏Group------>New Group
新建组入口
新建组界面
- 组名称:组名称可以为字母、数字、空格、下划线、中划线和英文点号组成,且必须以字母或数字开头,不能使用中文
- 组详情:描述这个组
3.5.2编辑或删除组
点击左侧菜单栏group(组)-->点击右侧的编辑按钮进行编辑
编辑完成后点击保存即可
3.5.3添加组成员
点击左侧群组-->点击组名,效果如下
添加成员入口
添加用户界面
1.选择要添加的用户
2.选择赋予他的权限
3.5.4修改成员的权限(owner权限用户操作)
点击左侧的Groups,然后点击当前的组。
点击管理权限
修改用户权限入口
修改想要修改的用户的权限
修改用户权限
3.6权限说明(角色-权限)
Guest(匿名用户) - 创建项目、写留言薄
Reporter(报告人)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段
Developer(开发者)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段、创建合并请求、创建新分支、推送不受保护的分支、移除不受保护的分支 、创建标签、编写wiki
Master(管理者)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段、创建合并请求、创建新分支、推送不受保护的分支、移除不受保护的分
支 、创建标签、编写wiki、增加团队成员、推送受保护的分支、移除受保护
的分支、编辑项目、添加部署密钥、配置项目钩子
Owner(所有者)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段、创建合并请求、创建新分支、推送不受保护的分支、移除不受保护的分
支 、创建标签、编写wiki、增加团队成员、推送受保护的分支、移除受保护
的分支、编辑项目、添加部署密钥、配置项目钩子、开关公有模式、将项目转
移到另一个名称空间、删除项目