我最近一直在为我的项目团队编写 git hooks。我想知道开发人员是否在本地进行各种提交,而不遵循标准提交消息模式。然后他们推送这些提交。是否会因为提交不遵循模式而导致推送失败?
期望的结果是他们能够按照自己的意愿在本地提交,然后当他们推回主要的公司分支时被迫遵循结构方式。
想法?这是最佳做法吗?
诀窍是:没有发布git 钩子(推/拉)
因此,如果您的项目成员推送到一个裸仓库,其中服务器端钩子(pre-receive
或update
)检查提交消息模式(我不确定它是否可以完成),那么推送将失败。
但是提交存在于开发人员本地仓库中,他/她仍然需要修复它(git commit --amend
如果没有其他提交已经完成)。
最好是:
git init
. _这样,它们将比服务器端更快地失败(可以推送 n 个不正确的提交,并且会失败)
在其他工作中,这里使用客户端挂钩会更合适。