安装
Ubuntu 16.04.6 LTS
1 | # 查看端口占用情况,kill掉占用80的进程,否则会502 |
反向代理
由于gitlab安装在内网服务器上,外网无法访问,所以需要使用反向代理,配置如下:
内网GitLab的配置
1 | sudo vi /etc/gitlab/gitlab.rb |
- 修改GitLab的url
1 | external_url 'http://kangyonggan.com:8888' |
- 修改监听的端口
1 | nginx['listen_port'] = 8888 |
内网穿透
1 | ssh -C -f -N -g -R 8880:127.0.0.1:8888 root@kangyonggan.com |
外网Nginx的配置
1 | sudo vi /etc/nginx/sites-available/default |
增加配置如下:
1 | # gitlab |
情景
假设公司有3个小组,分别为:
- 网关组
- 风控组
各小组成员分别为:
- 网关组:张大(组长)、张二、张三。
- 风控组:李大(组长)、李二、李三、李四。
各小组项目分别为:
- 网关组:proj1、proj2。
- 风控组:proj3、proj4。
管理员
使用管理员(root)登录之后,找到管理员区域(Admin Area)。
添加组
New Group
禁用注册
如果开放注册,到时候将会看见五花大门的用户名和邮箱地址,为了统一,当有新人到来时统一分配。
退出登录后将会发现没有注册界面了
添加成员
注意:组长允许创建项目,但不允许创建组。
普通成员既不允许创建项目,也不允许创建组。
如果用户收不到重置密码的邮件,管理员可以对用户进行编辑,在编辑页修改密码
分配用户到组
组长
首次登录会要求修改密码
创建项目
说明:developer角色不能push代码到master分支,通常master分支可以作为生产分支,仅组长可以push,开发者可以在其他分支开发,最后由组长合并代码到master分支。