- 前言
- 下载GItlab
- 安装启动Gitlab
- 安装
- 修改配置文件
- 防火墙设置
- 启动Gitlab
- Gitlab基本使用介绍
- 修改密码
- Dashboard 仪表盘
- Users菜单
- 创建用户
- 查看用户信息和修改
- 锁定/禁用/删除/完全删除
- Groups 菜单
- 创建组
- 修改和删除组
- 添加用户到组
- 组用户修改
- Project
- 创建/修改/删除
- 从GitHub导入到Gitlab
- 首先需要在GitHub上生成Token
本篇内容主要介绍了如何在Centos7上安装Gitlab,并简单的介绍Gitlab的基础功能:用户(创建、修改、删除),组(创建、修改、删除、添加用户到组、修改组用户的权限及其失效时间等),项目(创建、删除、修改、以及详细介绍了如何从GitHub上导入项目)
注意:运行Gitlab的机器,内存至少3G以上
- 在 清华大学开源软件镜像站 首页进行搜索 gitlab-ce (ce是社区版,免费)。
- 点击进去可以看到多种软件包供我们选择,因为我们使用的是centos,所以包管理器是使用的rpm,而yum是rpm的前端应用程序,所以再次点击 yum 进入内层
- 接下来就需要根据机器的操作系统版本,进行选择指定大版本的gitlab,这里我们演示的是centos7,所以选择el7进入。
如果是centos系统,可以使用命令uname -a 查看系统的版本
- 接下来就选择具体的版本进行安装,推荐安装最新的(根据Date降序排序,下载第一个即可)
- 下载的方式很多,可以先下载到本地,再使用rz(需要安装lrzsz:yum install lrzsz -y)推送到远程服务器。也可以使用wget直接在服务器内部下载。
$ wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.3.2-ce.0.el7.x86_64.rpm --no-check-certificate安装启动Gitlab 安装
因为第一步我们下载的是rpm文件,所以使用rpm进行安装。
rpm -ivh gitlab-ce-14.3.2-ce.0.el7.x86_64.rpm
安装完后,会出现下面的提示,它告诉我们需要去修改配置文件/etc/gitlab/gitlab.rb 中的external_url值,然后再重新执行命令gitlab-ctl reconfigure 启动Gitlab实例
# 编辑配置文件 vim /etc/gitlab/gitlab.rb
将external_url 'http://gitlab.example.com'的值修改成external_url 'http://192.168.42.128:82',这里的ip和端口都改成你自己的需要的即可,然后保存退出。
防火墙设置# 查看防火墙状态 systemctl status firewalld.service # 关闭防火墙 systemctl stop firewalld.service # 开机禁用防火墙 systemctl disable firewalld.service启动Gitlab
gitlab-ctl reconfigure
需要花费一定长的时间,执行的时间长短跟硬件有关。
安装完成后,看见最下方输出了一些提示信息:管理员用户名是 root,密码在/etc/gitlab/initial_root_password文件中,且该文件会在24h后被清理,所以现在我们需要更改密码。
Notes: Default admin account has been configured with following details: Username: root Password: You didn't opt-in to print initial root password to STDOUT. Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.
接着在浏览器上输入http://192.168.42.128:82(external_url 的值),输入用户名和密码登录即可
- 有一种方案是使用命令的方式修改,比较麻烦
#进入管理终端 gitlab-rails console production #查询 user = User.where(id: 1).first #设置密码 user.password='12345678' #确认密码 user.password_confirmation = '12345678' #保存不然不生效 user.save!
- 在前端界面上进行修改
访问 http://192.168.42.128:82/admin/users/root/edit ,修改密码后进行保存后重新登录即可。
这里可以查看到全局的数据总览,也可以进行快捷创建用户、组、项目
选择Admin,然后选择菜单中的User,点击页面右侧的New user进行创建用户
还是进入Users菜单,找到需要修改的用户,然后点击姓名进去,中间就是该用户的基本信息,然后点击右上的Edit按钮修改即可。
如果只是修改,可以点击指定行后面的Edit直接修改。
用户行末尾的设置按钮
- Blok:锁定用户
- Deactivate:禁用
- Delete user:删除
- Delete user and contributions:删除用户和贡献
点击组名进入内部,先选择用户,然后选择其角色,最后点击添加按钮添加进组
Gitlab用户在组里面有5种不同权限:
- Guest:可以创建issue、发表评论,不能读写版本库。
- Reporter:可以克隆代码,不能提交,QA、PM可以赋予这个权限。
- Developer:可以克隆代码、开发、提交、push,普通开发可以赋予这个权限。
- Maintainer:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心开发可以赋予这个权限。
- Owner:可以设置项目访问权限-Visibility Level、删除项目、迁移项目、管理组成员,开发组组长可以赋予这个权限
点击Manage access 进去,可以在用户行进行设置权限、设置失效时间、以及删除用户
修改、删除和上面的组和用户类似就不再细说了
点击 New Project 进行创建项目
空白项目就不用说了,直接就是一个空的项目,里面什么都没有
下面这个是模板项目,点击使用就会创建相关的文件到项目内部。
从其它地方导入项目:
这里需要选择token的权限,及其失效时间,我们这里演示只选择repo即可
创建完token后,将其复制出来,然后切换到Gitlab,我们新建一个项目,选择使用import Project,选择从GitHub上导入,将刚在GitHub上创建的token复制进输入框,点击确定,成功后就会列出GitHub上的项目了。
设置Gitlab的组后,点击import即可将GitHub上的仓库导入到Gitlab中,这里等待一段时间后刷新页面,可以看到Pedding状态改为Complate即可
跳转到项目内可以看到,GitHub上的项目完整的导入到了Gitlab中



