【发布时间】:2011-04-08 07:58:01
【问题描述】:
目前,我们在 BitBucket 上使用 Mercurial 作为我们的 VCS。
项目现在的方式是一个解决方案,所有代码都签入所有开发人员在“默认”分支上工作。每天早上,我们都会创建一个构建版本,然后 QA 会得到它。
我想知道每个开发人员自己分支是否更有意义,因为每个开发人员都在解决解决方案中的一个项目。
另一个要点是这将如何影响质量保证?他们是否需要在构建之前合并所有分支?
我真的很困惑。
【问题讨论】:
目前,我们在 BitBucket 上使用 Mercurial 作为我们的 VCS。
项目现在的方式是一个解决方案,所有代码都签入所有开发人员在“默认”分支上工作。每天早上,我们都会创建一个构建版本,然后 QA 会得到它。
我想知道每个开发人员自己分支是否更有意义,因为每个开发人员都在解决解决方案中的一个项目。
另一个要点是这将如何影响质量保证?他们是否需要在构建之前合并所有分支?
我真的很困惑。
【问题讨论】:
如“When should you make a branch”中所述,您使用分支来隔离开发工作。
在您的情况下,您将隔离您正在处理的解决方案中的每个项目。
这将允许:
但这也需要在一个公共分支中合并,以便将所有项目作为一个解决方案一起测试。
See HgInit(来自 Joel Spolsky)了解有关此类协作工作流程的更多信息。
在“存储库架构”中,Joel 说明了在两个不同团队中隔离的两个开发工作,但最后仍然包括同步(合并)工作。
【讨论】: