git hooks push和local commit

时间:2010-07-29 14:01:00

标签: git githooks

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

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

思考?这是最好的做法吗?

1 个答案:

答案 0 :(得分:6)

诀窍是:git hooks未发布(推/拉)

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

最好是:

  • 使用右侧挂钩
  • 制作模板 Git repo
  • 确保开发人员使用--template选项初始化他们的repo,引用正确的通用模板 请参阅git init
  • template directory section

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

在其他工作中,这里的客户端钩子更合适。