【问题标题】:gitolite run hook on 'wild' repository creationgitolite 在“狂野”存储库创建上运行挂钩
【发布时间】:2012-06-26 19:03:57
【问题描述】:

我需要运行一个脚本,该脚本将在我的团队成员创建新存储库时生成 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

【问题讨论】:

    标签: git gitolite cgit


    【解决方案1】:

    正如Gitolite "interfacing with external tools"中提到的,

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

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

    【讨论】:

    • 谢谢!我完全错过了那条线!
    猜你喜欢
    • 2014-10-20
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 2012-01-26
    • 1970-01-01
    • 1970-01-01
    • 2011-03-28
    • 2013-05-04
    相关资源
    最近更新 更多