我刚刚开始使用Mercurial作为源代码管理系统。我正在考虑使用类似于此处概述的工作流程:http : //stevelosh.com/blog/2010/05/mercurial-workflows-stable-default/。基本上有两个分支,一个“稳定”和一个“发展”。所有开发都将在“开发”分支上完成,并且仅在经过测试并准备发布时才合并到“稳定”分支中。
o | v2.0
|\|
| o added new feature
o | V1.0
|\|
| o added new feature
| |
| o fixed bug
o |
我想阻止开发人员不小心将更改推送到稳定分支。我该如何实现?我知道有一些方法可以挂接到某些Mercurial事件,但是如果对稳定分支进行了更改,哪一个可以拒绝推送?以及如何检测到挂钩内某些分支已进行更改?
顺便说一下,我正在运行Windows 7。
感谢criswel的回答-它为我指明了正确的方向。事实证明,ACL扩展名(与Merurial一起提供)解决了这个问题。我编辑了主存储库“ .hg”文件夹中的“ hgrc”文件,如下所示:
[extensions]
acl =
[hooks]
pretxnchangegroup.acl = python:hgext.acl.hook
[acl]
sources = push
[acl.deny.branches]
stable = *
这将阻止任何人对稳定分支进行更改并将其推入主存储库。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句