4

当我的团队成员创建新存储库时,我需要运行一个脚本,该脚本将生成 projects.list 文件。

我们开发从“主”分支出来的固件,但这些分支永远不会合并回主控。由于永远不会合并,我决定为每个不同版本的固件创建存储库。我开发了一个 bash 脚本,它将为我创建 projects.list 文件。

find repositories/ -iname "*.git" -type d | grep --invert-match "gitolite-admin" | sed 's/repositories\///g' > /srv/git/projects.list

现在我无法创建调用该脚本的钩子。

我曾尝试让 gitolite 为我生成文件,但没有运气。任何帮助表示赞赏。谢谢!

回答

在 config/gitolite.conf 我使 repo def 看起来像这样:

repo    Firmware/[a-zA-Z0-9].*/[a-zA-Z0-9].*
        C       =   @all
        RW+     =   @all
        R = gitweb
        config gitweb.owner = Repo Manager
4

1 回答 1

1

正如Gitolite “与外部工具的接口”中提到的,

gitweb 可读的 repos 列表被写入一个文件,该文件的名称由rcfile 变量给出GITWEB_PROJECTS_LIST
如果未指定或为空,此变量的默认值为$HOME/projects.list

因此,除非您让特殊用户可读您的存储库gitweb,否则 Gitolite 不会$HOME/projects.list为您生成/完成。

于 2012-06-27T15:42:38.843 回答