我能';我在gitweb上看不到我的项目。如何正确配置gitweb?

我能';我在gitweb上看不到我的项目。如何正确配置gitweb?,git,version-control,configuration,gitolite,gitweb,Git,Version Control,Configuration,Gitolite,Gitweb,目标:在gitweb网页中查看我的项目。 我已经安装了git+gitolite+gitweb。我的gitolite.conf文件是: repo gitolite-admin RW+ = ADMINUSER repo testing RW+ = @all repo PROJECT1 RW+ = USER1 RW+ = USER2 R =

目标:在gitweb网页中查看我的项目。

我已经安装了git+gitolite+gitweb。我的gitolite.conf文件是:

repo    gitolite-admin
        RW+     =   ADMINUSER

repo    testing
        RW+     =   @all

repo    PROJECT1
        RW+     =   USER1
        RW+     =   USER2
        R       =   gitweb
当我转到我的服务器时,我能看到的唯一项目是:

  • testing.git
在运行gitolite的服务器上。/home/git/projects.list文件具有:

PROJECT1.git

当我转到gitweb URL时,如何让PROJECT1显示?

您通常只需要授予对gitweb的读取权限:请参阅

要通过“
git daemon
”访问repo或repo组,只需向特殊用户“
daemon
”授予读取权限即可
同样,授予
gitweb
读取权限,以允许
gitweb
CGI显示回购协议。
大概是这样的:

这为您提供了一种为gitweb和/或守护程序访问提供多个repo的快速方法

您也可以简单地向项目中添加说明以使其可见:

repo    PROJECT1
        PROJECT1 = "description for PROJECT1"
        RW+     =   USER1
        RW+     =   USER2

对于其余部分,请确保您的网站遵循文档。

确保您的gitweb.conf有follow行

$projectroot = "/home/git/repositories"; 
$projects_list = "/home/git/projects.list";

把这条路改成你的。我也有同样的问题,因为我没有第二行。所以我的回购协议在网上随机显示。

我也遇到了同样的问题,结果是集团所有权问题。从以前使用ssh访问开始,我将repo的组所有权设置为内部开发人员组,而不是git。我跑过一次:

chown -R git:git /home/git/repositories
所有repo都显示为conf文件,使用:

$projects_list = $projectroot;

在我的gitolite配置中,我已经有了
R=gitweb
,但是gitweb没有显示PROJECT1。当我给PROJECT1
R=@all
@TrevorBoydSmith
R=Gitweb
时,Gitweb只显示PROJECT1是不够的。您是否也有
RW+=USER1
?(即其他用户的另一条规则)在我的gitolite.conf中,我确实有
RW+=USER1
。考虑到我有
R=gitweb
,但gitweb没有显示PROJECT1,这不意味着我的http/apache配置不正确吗?@TrevorBoydSmith:我怀疑是这样。是时候再检查一遍了。如果用户1的标识没有正确地传递给Gitolite,gitweb将不会显示该站点。我认为为PROJECT1添加
R=gitweb
将使PROJECT1显示在gitweb项目列表上。。。但我仍然只看到testing.git。鉴于我的gitolite可以工作,我认为ssh配置正确。(我在用户“git”的主目录中安装了gitolite。)
$projects_list = $projectroot;