Linux 上 GitLab 出现“乱码”,通常不是 GitLab 本身坏了,而是字符编码、终端环境或浏览器/客户端编码不一致导致的。下面按常见原因给你排查思路。
????、方块、奇怪符号git log 中文乱码locale
正常应类似:
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
sudo locale-gen en_US.UTF-8
sudo update-locale LANG=en_US.UTF-8
或编辑:
/etc/default/locale
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
重启服务器或重新登录。
git log 中文乱码提交时系统不是 UTF-8
git config --global core.quotepath false
git config --global i18n.commitencoding utf-8
git config --global i18n.logoutputencoding utf-8
并确保终端是 UTF-8。
???SHOW client_encoding;
SHOW server_encoding;
应为:
UTF8
如果不是,需要重建数据库或修正编码(较重操作,建议备份)。
Content-Type: text/html; charset=utf-8
容器默认 LANG=C
运行容器时加:
-e LANG=en_US.UTF-8 \
-e LC_ALL=en_US.UTF-8
GitLab 官方镜像也适用。
✅ 解决:在 Windows 端设置 Git:
git config --global core.quotepath false
locale 是 UTF-8如果你愿意,可以告诉我:
我可以直接给你精确命令。