1、简介

    GitHub是2008年由Ruby on Rails编写而成,与业界闻名的Github类似;但要将代码上传到GitHub上面,而且将项目设为私有还要收费。GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,可通过Web界面进行访问公开的或者私人项目,非常适合在团队内部使用。

    在gitlab中有三个版本,分别是CE(社区版)、EE(企业版)、OM(RPM包完整版,里面包括nginx、redis等其它软件,比较大)。这里的编译安装版,是指CE版的源码安装。


2、国内社区安装源

下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

[root@iZm5e3d4r5i5ml889vh6esZ gitlab]# curl -LJO https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.8.4-ce.0.el7.x86_64.rpm
[root@iZm5e3d4r5i5ml889vh6esZ gitlab]# rpm -i gitlab-ce-10.8.4-ce.0.el7.x86_64.rpm



3、配置、启动

[root@iZm5e3d4r5i5ml889vh6esZ gitlab]# gitlab-ctl reconfigure #自动配置文件权限,安装数据库(安装的时间很长)
[root@iZm5e3d4r5i5ml889vh6esZ gitlab]# gitlab-rake cache:clear RAILS_ENV=production #清空缓存
[root@iZm5e3d4r5i5ml889vh6esZ gitlab]# gitlab-ctl restart #重启所有 gitlab 组件

    GitLab常用命令

sudo gitlab-ctl start    # 启动所有 gitlab 组件;
sudo gitlab-ctl stop        # 停止所有 gitlab 组件;
sudo gitlab-ctl restart        # 重启所有 gitlab 组件;
sudo gitlab-ctl status        # 查看服务状态;
sudo gitlab-ctl reconfigure        # 启动服务;
sudo vim /etc/gitlab/gitlab.rb        # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace    # 检查gitlab;
sudo gitlab-ctl tail        # 查看日志;



5、汉化



5.1 确定gitlab的版本

[root@iZm5e3d4r5i5ml889vh6esZ gitlab]# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
10.8.4



5.2 Omnibus 安装汉化

#获取当前版本
gitlab_version=$(sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION)

假设当前版本为v9.0.0,并确认汉化版本库是否包含该版本的汉化标签(-zh结尾)。

如果具有相同版本的汉化标签,则首先在本地 clone 仓库。

# 克隆汉化版本库
git clone https://gitlab.com/xhang/gitlab.git
# 如果已经克隆过,则进行更新
git fetch

然后比较汉化标签和原标签,导出 patch 用的 diff 文件。

# 导出9.0.0 版本的汉化补丁
git diff v${gitlab_version} v${gitlab_version}-zh > ../${gitlab_version}-zh.diff

执行完毕后将生成当前版本的补丁文件,如 9.0.0-zh.diff

导入汉化补丁:

# 停止 gitlab
sudo gitlab-ctl stop
sudo patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 9.0.0-zh.diff

确定没有 .rej 文件,重启 GitLab 即可。

sudo gitlab-ctl start

执行重新配置命令

sudo gitlab-ctl reconfigure

如果汉化中出现问题,请重新安装 GitLab(注意备份数据)。

 

汉化的wiki地址:https://gitlab.com/xhang/gitlab/wikis/home



6、卸载gitlab

sudo gitlab-ctl stop #停止服务
rpm -e gitlab-ce #卸载gitlab
ps aux | grep gitlab #查看gitlab进程
kill -9 pid #杀掉gitlab第一个守护进程,就是带有好多.............的进程),杀掉后,在ps aux | grep gitlab确认一遍,还有没有gitlab的进程
find / -name gitlab|xargs rm -rf #除所有包含gitlab文件



7、访问

    http://ip,默认是80端口

    第一次进入需要设置root密码。


8、修改为真实ip

#vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
## GitLab settings
  gitlab:
    ## Web server settings (note: host is the FQDN, do not include http://)
    host: ip #真实ip
    port: 80
    https: false

    重启gitlab

gitlab-ctl restart