安装了git web和cgit来试用git/gitosis存储库的web接口。戴着13号软呢帽,我的发炎很厉害。我安装了gitweb和cgit并设置了指向我的存储库的配置,但是gitweb和cgi都不会列出存储库。gitweb显示gitweb页面,但显示:
404-找不到项目
我在/etc/gitweb.conf文件中列出了正确的目录:

 $projectroot = "/var/lib/gitosis/repositories";
 $projects_list = "/var/lib/gitosis/gitosis/projects.list";
 $export_ok="";
 $strict_export = "true";

CGIT显示CGIT页面,但显示:
不是Git存储库:
'/var/lib/gitosis/repositories/code/test.git'
当我点击这个测试库链接时(是的,它存在)。我有正确的目录
在/etc/cgitc文件中列出:
 repo.url=Test Repo
 repo.path=/var/lib/gitosis/repositories/code/test.git
 repo.desc=master test repository
 repo.owner=gitosis@gitserv
 repo.readme=info/web/about.html

因为两者都没有列出存储库,我觉得这一定是我的配置,但我似乎不知道如何配置才能显示这些库。我的存储库符号链接在/var/lib/gitosis/repositories中,指向目录/home/git。我还在/var/lib/gitosis/repositories下将我的存储库设置为code和conf以及docs,您可以使用code/test.git或conf/test.git或docs/test.git查看它们。我认为这可能是问题所在,并将repo直接复制到/var/lib/gitosis/repositories dir中,但它们仍然没有显示。请任何人指点我,我可以让这个工作。已经干了好几天了。

最佳答案

因为这些存储库实际上在主目录中,所以可能是权限问题。也许你的家是“别人”看不懂的?
这些存储库目录(在您家中,而不是符号链接)的权限是否足够宽,以允许Web服务器查看它们?为了让web服务器看到您的存储库,web服务器可以读取存储库的完整路径和存储库本身,并且目录需要由web服务器chmod
使用一些r+x查看权限,并使用正确的判断。
或者,也许更好……只需将存储库移到其他地方,比如ls -lachmod,并在那里正确设置权限。我建议这样做,因为有充分的理由说明为什么你的家不应该是世界可读的。

09-04 06:40