GitLab自建Docker实例中添加首个Wiki页面失败,提示safe.directory未找到
GitLab自建Docker实例中添加首个Wiki页面失败,提示safe.directory未找到
我特别理解你遇到这个问题的烦躁——代码提交明明正常,偏偏Wiki页面就卡在这里。这个报错本质上是Git的安全机制在起作用,因为Wiki其实是一个独立的Git仓库,和项目代码仓库的权限、配置上下文可能不一样,你之前的操作没覆盖到Wiki仓库的场景。
给你几个针对性的解决步骤,亲测有效:
第一步:进入GitLab容器内部
先通过docker ps找到你的GitLab容器ID或名称,然后执行:docker exec -it <你的GitLab容器ID/名称> /bin/bash第二步:切换到git用户操作
GitLab内部的仓库操作都是用git用户执行的,之前你可能在root用户下操作没生效,切换过去:su - git第三步:为git用户配置全局safe.directory
执行这个命令为git用户添加全局安全目录配置:git config --global --add safe.directory '*'也可以直接编辑git用户的配置文件
~/.gitconfig,手动添加以下内容:[safe] directory = *第四步:检查并修复Wiki仓库的权限
找到对应项目的Wiki仓库路径,一般在/var/opt/gitlab/git-data/repositories/@hashed/目录下(可以通过项目ID匹配,比如项目ID为10,对应的Wiki仓库是xxx.wiki.git),然后修复权限:chown -R git:git /var/opt/gitlab/git-data/repositories/@hashed/xx/xx/<项目ID>.wiki.git
完成这些操作后,退出容器再尝试添加Wiki页面,应该就能正常提交了。
备注:内容来源于stack exchange,提问作者user239970
相关产品推荐
相关产品推荐

