汉化 Linux 版 GitLab 主要有两种方式:使用官方中文语言包(推荐) 和 手动打汉化补丁。目前 GitLab 官方已经内置了中文支持,所以大多数情况下不需要手动汉化。
以下是详细的操作步骤和说明。
从 GitLab 12.0 版本开始,官方已经原生支持简体中文。如果你安装的是较新版本,直接修改设置即可。
首先,确保你安装的 GitLab 版本较新(建议 13.x 及以上,支持度更好)。
cat /opt/gitlab/version-manifest.txt | head -n 1
GitLab 的语言设置是基于用户的,管理员无法强制所有用户使用中文,用户需要自己设置。
如果你是管理员,希望新注册的用户默认看到中文,或者想修改系统默认语言:
如果你使用的是非常老的版本(例如 10.x 或 11.x),或者官方翻译进度不够,需要手动打汉化补丁。
警告: 手动汉化可能会导致 GitLab 在升级时出现问题,且操作相对复杂。请务必先备份。
gitlab-rake gitlab:env:info
# 或者
cat /opt/gitlab/version-manifest.txt
sudo yum install -y git # CentOS/RHEL
# 或者
sudo apt-get install -y git # Ubuntu/Debian
sudo gitlab-ctl stop
社区有维护汉化版,最常用的是 larryli 或 xhang 的仓库(注意:老版本仓库可能已停止维护,请确认仓库活跃度)。
这里以 xhang 的仓库为例(适用于较老版本,新版本建议用官方):
# 进入临时目录
cd /tmp
# 克隆项目,注意替换版本号
# 例如你的版本是 11.11.8,就找对应的分支或tag
git clone https://gitlab.com/xhang/gitlab.git
# 进入目录
cd gitlab
假设你当前安装的版本是 11.11.8,你需要找到对应的汉化补丁。
# 查看当前版本对应的汉化分支(通常 tag 名就是版本号)
git diff origin/11-11-stable..origin/11-11-stable-zh > /tmp/11.11.8-zh.diff
注意:具体的分支名称需要根据你安装的版本去仓库里查看。
将补丁文件应用到 GitLab 安装目录。
# 备份原文件(非常重要)
sudo cp -r /opt/gitlab/embedded/service/gitlab-rails{,.bak}
# 进入 GitLab 安装目录
cd /opt/gitlab/embedded/service/gitlab-rails
# 打补丁
sudo patch -p1 < /tmp/11.11.8-zh.diff
如果提示文件找不到,可能需要根据实际情况调整路径。
sudo gitlab-ctl reconfigure
sudo gitlab-ctl start
汉化不完全: 即使是手动汉化,也可能存在部分英文。这是因为 GitLab 更新太快,汉化团队跟不上,或者某些专有名词(如 CI/CD, Pipeline)通常保留英文。
升级冲突:
如果你手动汉化了 GitLab,下次执行 yum update gitlab-ce 或 apt-get upgrade gitlab-ce 时,升级可能会失败或覆盖汉化。建议在升级前先恢复备份的原始文件,升级成功后再重新打补丁。
Docker 版 GitLab: 如果你使用的是 Docker 部署,汉化比较麻烦。建议直接拉取带有中文标签的镜像(如果有的话),或者挂载汉化后的文件,但最省事的方法还是使用官方镜像并在网页端设置语言。
推荐方案: 强烈建议直接使用官方最新版 GitLab CE,并在用户设置中开启“简体中文”。 现在的官方中文翻译已经覆盖了 90% 以上的界面,稳定性最好。