【问题标题】:using gitolite VREFs for update hook使用 gitolite VREF 进行更新挂钩
【发布时间】:2012-12-13 23:51:13
【问题描述】:

我正在尝试从 v2 迁移到 v3 的 gitolite。进行服务器端提交消息检查的旧方法是将检查放入 myrepo.git/hooks/update.secondary 中特定于 repo 的钩子中

在 gitolite v3 中,他们建议将支票放入 VREF。文档有点混乱,我希望得到澄清。

我在 /home/git/.gitolite.rc 中添加了以下内容

LOCAL_CODE                  => "$ENV{HOME}/.gitolite/our_hooks",

在我的 our_hooks 目录中,我创建了一个 VREF 文件夹并将旧的 update.secondary 脚本放在那里。在我的 gitolite-admin/conf/gitolite.conf 文件中,我将以下内容添加到我希望脚本在其上执行的存储库中:

repo myrepo
  RW = @my_developers
  - VREF/update.secondary = @my_developers

当我尝试推送时,我收到一条通知,指出找不到 VREF/update.secondary。如果我改成

repo myrepo
  RW = @my_developers
  - /home/git/.gitolite/our_hooks/VREF/update.secondary = @my_developers

我没有收到任何投诉,但钩子似乎根本没有运行。

我是否错过了如何使用 gitolite 运行额外的更新检查?

【问题讨论】:

    标签: git gitolite


    【解决方案1】:

    这方面的文档有点混乱,所以希望这将有助于其他人尝试使用 gitolite v3 获得链式更新钩子。

    我上面所做的一切都是正确的,缺少的部分是我的 update.secondary 脚本需要驻留。

    在 gitolite-admin/conf/gitolite.conf 中,配置应如下所示:

    repo myrepo
      RW = @my_developers
      - VREF/update.secondary = @my_developers
    

    然后在GL_BINDIR目录中有一个VREF目录。将您的可执行 update.secondary 文件放在该目录中。

    GL_BINDIR 是包含您为了运行而运行的 gitolite 二进制文件的目录:gitolite setup

    【讨论】:

    • 谢谢。我在 VREFs 目录中使用了一个符号链接到 hooks/common 中的 update.secondary,然后在每个 repo 中搜索并运行 update.secondary。恕我直言,应该是默认功能。
    • 但是我怎样才能为每个项目运行一个单独的钩子呢?如何从 gitolite-admin 存储库管理它?提前致谢
    【解决方案2】:

    要添加到(已投票的)OP nathasmanswer,我在.gitolite.rc 文件中使用LOCAL_CODE 变量没有问题,如“customising gitolite”的“备用位置”部分所述”。

    但是,我从未设法使用环境变量。

    换句话说,这是行不通的:

    LOCAL_CODE                  => "$ENV{HOME}/.gitolite/our_hooks",
    

    但这会:

    LOCAL_CODE                  => "/home/git/.gitolite/our_hooks",
    

    使用完整路径意味着在 /home/git/.gitolite/our_hooks/VREF 中声明的任何 VREF 或钩子都将被识别

    repo myrepo
      RW = @my_developers
      - VREF/update.secondary = @my_developers
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-03
      • 1970-01-01
      • 2020-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-01
      相关资源
      最近更新 更多