GitLab简单使用
1 登录系统
系统安装完成后,在浏览器中输入:
http://yourip:8081
进行登录
说明:
- 开发私服一般使用ip地址
- 端口号默认为80,但管理员可能修改了端口号,比如此处使用的是8081
- 管理员使用root身份登录,初次登录需要修改密码
- 没有账号可以点击register进行注册
普通用户登录:
管理员登录:
说明:
- 管理员登录后可以管理用户
2 用户管理
root身份才可以操作
2.1 添加用户
填写用户信息:
说明:
- 管理员才有用户管理权限
- 邮箱必须输入,而且不可重复,系统会发送设置密码链接到该邮箱,由于没有外网访问地址,局域网私服无法从外部访问,因此该邮箱中收到的链接通常无法使用,最好用户自己完成注册,如果是管理员代为注册,可以在注册完成后,进入用户编辑页面重置其密码,用户通过管理员重置的密码登录后,再修改为自己的密码
- 访问权限设置:是否可以创建组,是否标准账号(可以访问组和项目),是否管理员(管理组,项目,用户及gitlab系统),是否外部账号(外部用户除非特殊授权,无法查看内部和私有项目,不能创建项目和组)
2.2 编辑用户
从Admin Area处可以进行用户编辑操作
编辑用户除了可以修改注册信息外,可以重置用户密码。
2.3 屏蔽与删除用户
在用户设置菜单下可以完成用户屏蔽,删除,删除用户及其贡献(Delete user and contributions)操作
被屏蔽用户(Blocked User)
- 用户不能登录
- 不能访问git库
- 个人项目和组被保留
被删除用户(Deleted User)
- 用户被永久删除不可恢复
- 库中与该用户相关内容会移到系统级的Ghost User账号下
账号及贡献均被删除的用户(Delete user and contributions)
- 用户及贡献均被删除,不会转移到系统ghost user账号下
- 用户个人项目,所拥有的组,组中的项目都会被删除,向其他项目提交的内容不受影响
账号被删除后的记录关联
账号被删除后,并不是所有记录均被删除,以下内容将被保留:
- 用户建立的问题
- 用户建立的Merge请求
- 用户建立的笔记
为了不删除这些内容,这些内容都被关联到系统级的Ghost User用户名下,但是用户的提交(commit)仍旧显示原始的用户名
3 组管理
组(group)
- 可以通过组来管理多个项目
- 组成员可以访问组中的所有项目
- 可以在组下面继续建立组(子组),比如你可以为公司成员建立组(
company-team
),为各个team建立子组(backend-team
,frontend-team
,production-team
)
命名空间(namespace )
命名空间用于为用户,组和子组提供唯一名字
3.1 新建组
Projects首页和Admin area下面均可管理组
输入组信息:
说明:
- 组名可以含有数字,字母,下划线,中划线,点和空格
- 会用组名自动生成组的URL,但不会含有空格,不能用中划线开头,不能用点结尾
- 可以为组设置头像(Group avatar)
- 组的可见性包括:
- Private:只有成员才可以查看组及组内项目
- Internal:任何登录用户均可查看该组和组内项目
- Public:无需授权便可以查看组及任何公共项目
3.2 编辑和删除组
可以修改刚刚输入的组信息,甚至可以删除该组
3.3 向组添加成员
点击组链接可以为组添加成员:
在右侧栏目中选择用户,并为用户设置组内权限:
组内权限说明:
操作 | Guest 匿名用户 | Reporter 报告人 | Devloper 开发者 | Maintainer 维护者/管理者 | Owner 所有人 |
---|---|---|---|---|---|
下载项目 | √(注1) | √ | √ | √ | √ |
评论 | √(注1) | √ | √ | √ | √ |
查看代码 | √(注1) | √ | √ | √ | √ |
拉取代码 | √(注1) | √ | √ | √ | √ |
查看wiki | √(注1) | √ | √ | √ | √ |
建立问题 | √(注1) | √ | √ | √ | √ |
查看问题 | √ | √ | √ | √ | √ |
指派问题 | √ | √ | √ | √ | |
建立代码片段 | √ | √ | √ | √ | |
建立分支 | √ | √ | √ | ||
推送(push)不受保护分支 | √ | √ | √ | ||
移除不受保护分支 | √ | √ | √ | ||
建立合并请求 | √ | √ | √ | ||
管理/接受合并请求 | √ | √ | √ | ||
添加标签(tag) | √ | √ | √ | ||
建立编辑wiki | √ | √ | √ | ||
添加成员 | √ | √ | |||
启用/禁用分支保护 | √ | √ | |||
推送受保护分支 | √ | √ | |||
编辑项目 | √ | √ | |||
删除wiki | √ | √ | |||
将项目传输到其他命名空间 | √ | ||||
移除项目 | √ | ||||
删除问题 | √ |
注1:私有项目除外
3.4 添加子组
可以为公司中的每个项目组可以建成子组,建立子组的入口如下:
先在组菜单(groups)下找到要操作的组:
点击组链接,进入组详情页面,从右侧下拉按钮处选择建立子组(此处也有建立项目的入口):
建立子组操作可建组操作类似,可见性控制没有public一项,规则仍旧一致:
为子组添加成员
选择子组,然后在Members菜单下为子组添加成员,设置组内角色并点击Add to group按钮:
说明:
已经在父组中的成员自动加入子组
4 项目管理
通过项目你可以管理你的代码库,进行问题跟踪,代码协作开发,持续构建,测试,发布(内建GitLab CI/CD功能)。
你的项目可以是公共的(public),内部的(internally)或者私有的(privately),GitLab也不会限制你创建的私有项目数。
4.1 新建项目
当你创建了用户,创建了组,接下来就可以创建项目了:
你可以建立空项目,或者从模板建立项目,以及导入现有项目:
说明:
- 输入项目名,选择项目url使用组名或者用户名,选择项目可见性以及是否初始化带有reame文档的项目库
项目创建成功:
说明:
- 如果你需要通过ssh方式推送和拉取项目需要配置SSH key。
- 选择clone项目时,如果是内网请注意将域名改为ip地址