1

远程:未定义的子例程 &main::repo_rights 在钩子/更新第 41 行调用。远程:错误:钩子拒绝更新

为了解决这个问题,我已经从我的所有存储库中删除了更新挂钩,但我知道它们现在已经完全开放。

我运行了 gl-setup,我的机器上可能有混合版本的 gitolite。恐怕我运行 gl-setup 的版本与我当前运行的版本不同。我不知道该怎么说。请帮忙。:-(

4

1 回答 1

0

更新,对于 Gitolite 的更新版本(即 V3.x 或更高版本),官方文档将是:“添加您自己的更新挂钩”,它使用VREFs(虚拟引用)

如果它不存在,则将此行添加到rc文件中的%RC块中,或者如果它已经存在并被注释掉,则取消注释:

LOCAL_CODE => "$ENV{HOME}/local",

将你的更新钩子复制到VREF这个目录下的一个子目录,给它一个合适的名字(比如说“ crlf”):

# log on to gitolite hosting user on the server, then:
cd $HOME
mkdir -p local/VREF
cp your-crlf-update-hook local/VREF/crlf
chmod +x local/VREF/crlf

在您的gitolite-admin克隆中,编辑conf/gitolite.conf并添加如下行:

-   VREF/crlf       =   @all

到每个应该有那个“更新”钩子的仓库。

或者,您可以简单地将其添加到gitolite.conf文件末尾:

repo @all
    -   VREF/crlf       =   @all

无论哪种方式,将更改添加/提交/推送到 gitolite-admin 存储库。

于 2018-06-13T07:56:58.753 回答