以某种方式我的本地git服务器停止工作。每当我尝试克隆/推动/拉动时出现以下错误。
$ git pull origin
FATAL: parse './conf/gitolite.conf-compiled.pm' failed: No such file or directory
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
但是所需的gitolite.conf-compiled.pm
文件存在
/home/git/.gitolite/conf/gitolite.conf
/home/git/.gitolite/conf/gitolite.conf-compiled.pm
/home/git/.gitolite/conf/rule_info
因此,现在的问题是我如何获取所有存储库代码。当我导航到存储库之一并且目录结构如下所示
root@INLT-TRE0012:/home/git/repositories/cl.git# ls
branches config description gl-conf gl-slave-tregit1.status HEAD hooks info objects refs
答案 0 :(得分:1)
检查您的Gitolite版本。
如果“
perl -V
”的输出未以最后一个“.
”结尾 行,您的perl是ahead of current released perl。我刚刚推送了一个更新(提交35e0b2a),该更新应该可以修复它。
为perl 5.26做准备,从
.
中删除“@inc
”有人在irc上发现debian已经实现了它,所以gitolite失败了。
此修复程序甚至对于较旧的perls也是有用的。
答案 1 :(得分:0)
因此,现在的问题是如何获取所有存储库代码。当我导航到存储库之一并且目录结构如下所示时:
root@INLT-TRE0012:/home/git/repositories/cl.git# ls branches config description gl-conf gl-slave-tregit1.status HEAD
这是“裸克隆”。它只是Git仓库/历史记录,没有检出文件。在普通克隆中,这些文件位于.git
目录中。裸克隆只能推入和拉出。
您可以从该目录中获取带有已检出文件的普通克隆,就像从URL中一样。
git clone /home/git/repositories/cl.git