我们已经开始在工作中使用功能分支模式。
一切似乎都运行良好,这是我们使用的步骤:
- 开发者分支主干
- 开发人员使用分支完成实施和测试
- 开发人员将主干合并到分支中,使分支保持最新状态以备重新集成
- 维护者将分支重新集成到主干中
- 版本、构建和标记。
开发人员拥有对分支文件夹的读/写权限,对标签和主干的读权限
维护者对所有文件夹具有读/写权限
我们使用 svn 1.5.1(在服务器上仅限于 Ubuntu Server 8.04),尽管我们正在迁移到具有最新 svn 的最新服务器(Ubuntu Server 12.04)。
我们的客户端 TortoiseSVN 1.7.6,svn 客户端版本 1.7.4。
到目前为止,一切都运行良好,我们有多个开发人员同时编写功能。
然而,目前我是唯一被提名的维护者,一旦流程敲定并且人们已经接受了足够的培训,其他人将被提名。
我担心的是,一个过程变得更加自主,我的直接参与减少了,可能会发生以下情况,我不知道如何防止它们:
- 开发人员忘记了一个分支已被重新集成并意外地向它提交了工作
- 维护者没有充分检查分支是否是最新的并准备好重新集成并执行重新集成和提交。
我在 Tortoise 或 SVN 中看不到任何警告或阻止你这样做的东西。
再说一次,我并没有试图做出任何令人讨厌的事情,只是为了看看它做了什么。
如何自动防止用户做出这些错误的提交?