3

我最近一直在为我的项目团队编写 git hooks。我想知道开发人员是否在本地进行各种提交,而不遵循标准提交消息模式。然后他们推送这些提交。是否会因为提交不遵循模式而导致推送失败?

期望的结果是他们能够按照自己的意愿在本地提交,然后当他们推回主要的公司分支时被迫遵循结构方式。

想法?这是最佳做法吗?

4

1 回答 1

6

诀窍是:没有发布git 钩子(推/拉)

因此,如果您的项目成员推送到一个裸仓库,其中服务器端钩子(pre-receiveupdate)检查提交消息模式(我不确定它是否可以完成),那么推送将失败。
但是提交存在于开发人员本地仓库中,他/她仍然需要修复它(git commit --amend如果没有其他提交已经完成)。

最好是:

  • 使用正确的钩子制作模板Git 存储库
  • 确保开发人员使用引用正确通用模板的 --template 选项初始化他们的 repo。
    参阅git init. _

这样,它们将比服务器端更快地失败(可以推送 n 个不正确的提交,并且会失败)

在其他工作中,这里使用客户端挂钩会更合适。

于 2010-07-29T14:17:39.703 回答