关于GitLab中文版的那点事儿

杂序

关于Git的那些事儿,这里不多说。Git这个极好用的分布式版本管理系统,不得不说给我们日常团队研发及代码管理带来了太多益处与效率。
如果要问我他是何方神圣,我只想说你可以关注下:

  1. Git主页:https://git-scm.com/
  2. GitHub主页:https://github.com/
  3. GitLab主页:https://about.gitlab.com/
    本文将以CentOS7为系统,介绍GitLab CE(社区版)。

环境搭建

安装GitLab

通过GitLab首页域名进入首页,选择Download,如下图:
关于GitLab中文版的那点事儿_第1张图片

点击Select Oprating System,弹出系统列表选择CentOS7,按照安装步骤向导进行安装。

1、安装系统以来软件包,并且打开http服务和系统防火墙

$ sudo yum install libsemanage-static libsemanage-devel
$ sudo yum install curl policycoreutils openssh-server openssh-clients
$ sudo systemctl enable sshd
$ sudo systemctl start sshd
$ sudo yum install postfix
$ sudo systemctl enable postfix
$ sudo systemctl start postfix
$ sudo firewall-cmd --permanent --add-service=http
$ sudo systemctl reload firewalld

2、编辑/etc/gitlab/gitlab.rb文件,配置STMP邮件发送服务

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '[email protected]'

其他邮箱详细配置详见:https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/smtp.md

3、安装GitLab Server,有两种安装方式:

  • yum安装
$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
$ sudo yum install gitlab-ce

此安装方式,默认会安装最新版本。yum安装默认使用的国外镜像会比较慢,清华为我们一共了一个国内镜像,详情参见:https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/

  • 安装包安装
$ curl -LJO https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-XXX.rpm/download
$ rpm -i gitlab-ce-XXX.rpm

通过https://packages.gitlab.com/gitlab/gitlab-ce地址,可以下载rpm安装包。右上角的搜索框可以输入对应版本号,搜索出指定版本的安装包(这对于中文汉化很重要,此处安装的英文版大版本,一定要对应中文版的大版本。例如,中文版8-8-zh,可以汉化英文版8.8.x),本文使用8.8.9版本进行安装。
上文代码片段中的XXX需要替换成我们的安装版本号。

4、进行GitLab初始化基础配置
编辑/etc/gitlab/gitlab.rb配置文件

  • 修改访问IP/域名
external_url 'http://192.168.0.100'

以上配置,指定了访问GitLab的地址为192.168.0.100

5、触发GitLab配置生效

$ sudo gitlab-ctl reconfigure

6、如果没有报错,看见gitlab Reconfigured!提示,表示配置生效,可以通过我们刚刚配置的IP/域名访问登录GitLab平台了,此处地址为:http://192.168.0.100,默认的系统管理员账号:root,密码:5iveL!fe。

7、开启gitlab的自动启动

$ systemctl enable gitlab-runsvdir.service
$ systemctl start gitlab-runsvdir.service
$ gitlab-cmd start

关闭gitlab的自动启动命令:systemctl disable gitlab-runsvdir.service

8、查看当前安装GitLab版本

$ head -1 /opt/gitlab/version-manifest.txt

中文汉化

准备工作

1、首先我们确保Windows环境,安装了Git,因为我们所有的操作都在命令行完成
2、克隆汉化版仓库

$ git clone https://gitlab.com/xhang/gitlab

3、制作汉化补丁

$ git branch -a #查看当前所有版本分支 
$ sudo git diff origin/8-8-stable..origin/8-8-zh > /d/tmp/8.8.diff

以上命令,对比了英文版本8-8-stable与中文版本8-8-zh分支的差别,并再Windows系统的D盘tmp目录下生成了补丁文件8.8.diff。注意: 汉化补丁和安装的版本一定要一致, 小版本很重要, 例如8.8-zh只支持8.8.0不支持8.8.+

汉化

1、停止192.168.0.100服务器的GitLab Server(必须先停止GitLab Server再进行汉化,否则会出错)

$ sudo gitlab-ctl stop

2、上传上文生成的8.8.diff汉化补丁,至安装GitLab Server的CentOS7服务器,假设我们上传至/home,全路径为/home/8.8.diff。

3、进行汉化

$ sudo patch -d /opt/gitlab/embedded/service/gitlab-rails < /home/8.8.diff

4、启动GitLab Server

$ sudo gitlab-ctl start

5、再次使用http://192.168.0.100,登录GitLab管理平台,看到中文界面了吗?恭喜你汉化成功!见下图:
关于GitLab中文版的那点事儿_第2张图片

卸载

  • 停止GitLab
$ gitlab-ctl stop
  • 卸载GitLab
$ rpm -e gitlab-ce
  • 查看并结束GitLab进程
$ ps -ef | grep gitlab

root      1812     1  0 Jun15 ?        00:00:34 runsvdir -P /opt/gitlab/service log: ...........................................................................................................................................................................................................................................................................................................................................................................................................
root      2196  1812  0 Jun15 ?        00:00:00 runsv gitlab-workhorse
root      2455  1812  0 Jun15 ?        00:00:00 runsv gitlab-monitor
root      2771  1836  0 Jun15 ?        00:00:03 svlogd -tt /var/log/gitlab/redis
root      2772  1900  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/postgresql
root      2773  2131  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/unicorn
root      2774  2174  0 Jun15 ?        00:00:02 svlogd -tt /var/log/gitlab/sidekiq
root      2784  2514  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/redis-exporter
root      2788  2455  0 Jun15 ?        00:01:00 svlogd -tt /var/log/gitlab/gitlab-monitor
root      2793  2196  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/gitlab-workhorse
root      2794  2218  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/nginx
root      2795  2249  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/logrotate
root      2826  2273  0 Jun15 ?        00:01:19 svlogd -tt /var/log/gitlab/gitaly
root      2827  2406  0 Jun15 ?        00:00:04 svlogd -tt /var/log/gitlab/node-exporter
root      2843  2626  0 Jun15 ?        00:00:00 svlogd -tt /var/log/gitlab/postgres-exporter
root      2844  2541  0 Jun15 ?        00:00:02 svlogd -tt /var/log/gitlab/prometheus
root      2919  2582  0 Jun15 ?        00:00:01 svlogd -tt /var/log/gitlab/alertmanager
root      9239  9005  0 10:34 pts/0    00:00:00 grep --color=auto gitlab

$ kill -9 1812
$ ps -ef | grep gitlab
  1. 首先查看gitlab进程
  2. 杀掉第1个进程
  3. 再次查看gitlab进程是否存在(确认以杀死进程)
  • 删除所有包含gitlab的文件夹及目录
$ find / -name gitlab|xargs rm -rf

问题

ruby_block[supervise_redis_sleep] action run

在运行以下命令时,出现标题错误

$ sudo gitlab-ctl reconfigure

先执行命令

$ sudo exec /opt/gitlab/embedded/bin/runsvdir-start &

然后再次执行命令,配置正常

$ sudo gitlab-ctl reconfigure

warning: LF will be replaced by CRLF in…

在运行例如新增文件操作时,出现标题警告,可执行以下命令关闭转换设置

$ git config --global core.autocrlf false

改警告是由于windows中的换行符为 CRLF, 而在linux下的换行符为LF,所以在执行add . 时出现提示

你可能感兴趣的:(工具)