Github - 跨组织中所有项目的预提交挂钩
Github - Pre commit hook across all projects in organization
我想在我组织下的所有项目中设置预提交挂钩。我用谷歌搜索,发现我必须为每个项目手动执行此操作。有没有办法在我组织下的所有项目中设置这些挂钩。另外如果我可以在创建新项目时自动添加这些钩子会更有帮助。
GitHub(几乎)只支持客户端挂钩(它们不允许您使用自己的服务器端挂钩)。客户端挂钩,如预提交,是您不仅要为每个存储库配置的东西,而且要为每个用户对该存储库的克隆进行配置。
我说 "almost" 是因为它们还支持 "Protected Branches" 的一些预定义挂钩。您可以使用受保护的分支和自定义状态检查来构建您需要的内容。
如果将所有挂钩放在模板目录中,则可以设置 git 以便它在创建或克隆新存储库时使用这些挂钩。不过仅适用于客户端挂钩。
您可以在使用 git-init
或 git-clone
时使用 --template=/path/to/templatedir
选项,或者将以下行添加到您的 .gitconfig
:
[init]
templatedir = /path/to/templatedir
我想在我组织下的所有项目中设置预提交挂钩。我用谷歌搜索,发现我必须为每个项目手动执行此操作。有没有办法在我组织下的所有项目中设置这些挂钩。另外如果我可以在创建新项目时自动添加这些钩子会更有帮助。
GitHub(几乎)只支持客户端挂钩(它们不允许您使用自己的服务器端挂钩)。客户端挂钩,如预提交,是您不仅要为每个存储库配置的东西,而且要为每个用户对该存储库的克隆进行配置。
我说 "almost" 是因为它们还支持 "Protected Branches" 的一些预定义挂钩。您可以使用受保护的分支和自定义状态检查来构建您需要的内容。
如果将所有挂钩放在模板目录中,则可以设置 git 以便它在创建或克隆新存储库时使用这些挂钩。不过仅适用于客户端挂钩。
您可以在使用 git-init
或 git-clone
时使用 --template=/path/to/templatedir
选项,或者将以下行添加到您的 .gitconfig
:
[init]
templatedir = /path/to/templatedir