避免将分支合并到另一个分支的最佳方法

时间:2017-04-03 14:26:50

标签: git merge

我们在工作中有三个分支

  • 释放
  • 开发

我们基于develop开发成分支,完成后,我们将该开发合并到release一个用于要测试的应用程序。同时,我们继续开发和合并develop

我们测试了一个release,我们合并到master。我们永远不应该直接合并到主人,我们希望自动避免人为因素事故。

是否存在使分支不兼容的git方法,因此拒绝任何将其合并为另一个的尝试?有插件还是什么?

1 个答案:

答案 0 :(得分:4)

真正强制执行此操作的最佳方法是在接收端安装pre-receive挂钩(即,在您的中央“推送”存储库中)。

根据https://git-scm.com/book/gr/v2/Customizing-Git-Git-Hooks

  

处理来自客户端的推送时运行的第一个脚本   预先收到。它需要一个正在推送的引用列表   来自stdin;如果它退出非零,则不接受任何一个。您可以   使用这个钩子做一些事情,确保没有更新   引用是非快进的,或者是对所有引用进行访问控制   他们用推送修改的refs和文件。

检查文档和.git/hooks/*.sample中的示例挂钩,您应该能够将某些内容放在一起(即,查看作为命令行参数获得的引用,检查它们是否包含一个无效的合并,如果有,exit 1。如果你似乎无法让它发挥作用,请告诉我们。

要了解您是否要接受合并,可以使用git log创建广告。