26

我在我的中央存储库中编写了一个预提交挂钩。当我的客户克隆存储库时,它永远不会传播钩子。我希望这些钩子也可以复制到我客户的存储库中。我的客户是 Windows 用户,使用 msysgit 作为 git 客户端。

有什么方法可以将挂钩复制到本地存储库?

4

2 回答 2

11

您可以编写一个设置脚本,例如 setuphooks.sh,它会拉下挂钩脚本并将它们安装在正确的位置。写起来应该不难,curl大部分工作都可以。

或者,您可以将 repo 中的钩子包含在普通文件夹中,如.hooks.,然后将它们全部复制到.git/hooks.

其他人建议您对它们进行符号链接,但这会给 Windows 用户带来问题。

于 2012-06-25T15:36:28.680 回答
9

简单的方法,但一半的方法。;-)

我在 Windows 上使用 Git。

  1. 找到安装 git 的文件夹。
  2. 找到子文件夹“share\git-core\templates\hooks”
  3. 在那里复制你想要的钩子脚本。该文件夹包含钩子脚本示例,由git init命令在新的 Git 存储库中生成。
  4. 如果您使用该git clone命令,则 hooks 文件夹包含您在步骤 3 中复制的文件。
于 2014-04-24T04:35:43.533 回答