在一个常见的(基于git的)开发工作流程中,一个人维护一个master
分支和一个next
(或dev
)分支,用于测试目的:
master
开始,并合并到next
进行测试。如果认为稳定,则可以将要素分支合并到master
中。 master
会定期合并到next
next
会定期重绕(例如,发布后)。 next
分支合并到master
分支 能够直接或通过基于next
的其他分支自动阻止master
合并到next
会很有用。 如何使用git实现这一目标?
注意:如this question中所述,可以使用git hooks来防止在具有完全访问权限的远程存储库上进行这些类型的合并。但是,对于像BitBucket或GitHub这样的服务,这可能是(大概)不可能的,因此我寻求一种适用于本地存储库的解决方案,或者可以与远程存储库一起使用的解决方案,该存储库只具有有限的管理访问权限。
答案 0 :(得分:1)
如果你真的想使用Github / Bitbucket,那么不要给任何人写你的回购。只接受拉取请求。这样,你可以检查它包含的合并请求,如果你看到了你不想要的东西,就拒绝它们。
自动执行此操作的方法是创建一个本地仓库,添加一个执行检查的钩子,然后将拉取请求拉入新的本地“验证”仓库(这不应该是您正常的工作仓库,因此您可以总是扔掉它。)