我希望在给定存储库的克隆中始终存在一些钩子。有没有办法在存储库中的.git / hooks中添加文件?
由于
答案 0 :(得分:19)
可以在 git template 中定义自己的钩子,但即使在那里,这些钩子也是不可执行的。
即。一旦克隆了repo,用户仍然必须激活它们(重命名或激活可执行位)
这样,如果没有他/她的全部知识和明确的批准,所述用户将不会执行任何不需要的脚本。
对于任何“盲目”克隆回购的人来说,否则会造成太大的安全风险。
答案 1 :(得分:5)
对我来说听起来像是一个安全风险。仅仅因为你克隆一些存储库并不意味着你想让它有权执行代码。
您可以将一个钩子的副本放入版本化的代码中并包含一些脚本文件,以允许用户轻松地将它们复制到他的钩子目录中。当然,如果您安装了挂钩,您可以使用它们来保持自己的最新状态。