cgit/gitolite无法访问复制的仓库,如何获取克隆失败日志?
Git克隆失败日志获取及权限问题排查
获取克隆失败的详细日志
客户端侧
执行克隆命令时添加环境变量开启追踪:
GIT_TRACE=1 git clone git@192.168.8.20:linux linux-999
如果是HTTPS协议的克隆,改用:
GIT_CURL_VERBOSE=1 git clone https://xxx/xxx.git
会输出Git与服务器交互的完整过程,包括权限校验环节的细节。
服务器侧(Gitolite)
- 直接查看Gitolite日志文件,默认路径为
~gitolite/.gitolite/logs/,里面的日志会记录每一次请求的用户、仓库、权限校验结果等信息;部分部署环境下日志也可能在/var/log/gitolite.log。 - 若需要更详细的日志,可修改Gitolite的配置文件
.gitolite.rc,调整LOG_LEVEL参数为DEBUG,保存后重启Gitolite服务或重新执行gitolite setup生效。
当前权限拒绝问题的排查方向
你遇到的FATAL: R any linux user1 DENIED by fallthru错误,结合你的gitolite.conf配置,可能的原因及解决方式:
- 确认用户公钥有效性:检查服务器上
~gitolite/.gitolite/keydir/目录下是否存在user1.pub文件,且该公钥是你本地使用的私钥对应的公钥。 - 验证仓库存在性:登录服务器,确认
~gitolite/repositories/linux.git目录是否存在,且目录及文件的所有者为gitolite用户。 - 确认配置已生效:修改
gitolite.conf后,需通过gitolite setup命令或推送gitolite-admin仓库的更新,让新的权限配置生效。 - 检查仓库名拼写:错误提示提到可能拼错仓库名,确认克隆命令中的
linux与配置文件里的仓库名完全一致(Gitolite仓库名区分大小写)。
内容的提问来源于stack exchange,提问作者John Klug
相关产品推荐
相关产品推荐

