下面按常见场景给你讲 GitLab 在 Linux 服务器上的权限配置,包括系统层权限和GitLab 自身权限。
GitLab 安装后通常使用:
gitgit查看:
id git
常见目录:
/var/opt/gitlab # 数据目录
/var/log/gitlab # 日志
/etc/gitlab # 配置
推荐权限:
sudo chown -R git:git /var/opt/gitlab
sudo chmod -R 755 /var/opt/gitlab
⚠️ 不要随意改成 777
# 开发者本地生成
ssh-keygen -t ed25519
# 公钥加到 GitLab
User → Preferences → SSH Keys
编辑:
/etc/ssh/sshd_config
确保:
PubkeyAuthentication yes
PasswordAuthentication no # 建议关闭
重启:
sudo systemctl restart sshd
GitLab 权限模型:
| 角色 | 权限 |
|---|---|
| Guest | 只读 issue |
| Reporter | 读代码 |
| Developer | 提交代码 |
| Maintainer | 管理分支/成员 |
| Owner | 全部 |
配置路径:
Project → Members → Add member
推荐做法:
Project → Settings → Repository → Protected Branches
建议:
main / master:Only Maintainers检查:
ls -ld /var/opt/gitlab/git-data
修复:
sudo chown -R git:git /var/opt/gitlab/git-data
通常是权限或内存问题:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
/var/opt/gitlab如果你能说清楚:
我可以直接帮你给对应配置命令。