Gitolite,如何包含带有相对路径的.conf 文件?

Gitolite,如何包含带有相对路径的.conf 文件?

我正在运行 Gitolite 服务器,并且考虑每个存储库有 1 个配置文件。

目前我有这个 gitolite.conf 文件:

@php_dev = userA userB
@int_dev = userC
@lead = userD
@admin = @php_dev

repo    gitolite-admin
        RW+     =   @admin

repo    testing
        RW+     =   @all

include "repositories/*.conf"

然后我有 gitolite-admin/conf/repositories/cms/admin/repoA.conf 文件:

repo    cms/admin/repoA
        RW+     =   @php_dev
        RW      =   @int_dev
        R       =   @lead

当我提交时,我只收到以下警告:

remote: the following users have no pubkeys:
remote: userC

确实如此,用户 C 还没有公钥。(我只是想提一下,以防万一)

然后我在服务器上查看 /home/git/repositories/ 文件夹:

git@FX55TMP:~/repositories$ ls -la
total 16
drwx------ 4 git git 4096 2011-04-03 22:16 .
drwxr-xr-x 6 git git 4096 2011-04-03 22:16 ..
drwx------ 8 git git 4096 2011-04-03 23:21 gitolite-admin.git
drwx------ 7 git git 4096 2011-04-03 23:21 testing.git

正如文档中提到的那样,没有自动创建的 cms/admin/ 文件夹,所以我认为我的配置文件没有加载。

我是不是做错什么了?

答案1

您包含了“repositories/*.conf”,但您的文件位于 repositories/cms/admin/repoA.conf 中。星号通配符(至少在 gitolite 中)不会匹配子目录组件。它们将通配符称为 globhttp://sitaramc.github.com/gitolite/doc/gitolite.conf.html,并且通常 shell glob 只会在它们使用的目录内匹配。

由于它找不到任何 repositories/*.conf(因此也找不到您的 repoA.conf),所以它不会创建这些存储库。

相关内容