【问题标题】:Mercurial, Branch each project in a solution?Mercurial,分支解决方案中的每个项目?
【发布时间】:2011-04-08 07:58:01
【问题描述】:

目前,我们在 BitBucket 上使用 Mercurial 作为我们的 VCS。

项目现在的方式是一个解决方案,所有代码都签入所有开发人员在“默认”分支上工作。每天早上,我们都会创建一个构建版本,然后 QA 会得到它。

我想知道每个开发人员自己分支是否更有意义,因为每个开发人员都在解决解决方案中的一个项目。

另一个要点是这将如何影响质量保证?他们是否需要在构建之前合并所有分支?

我真的很困惑。

【问题讨论】:

    标签: mercurial branch


    【解决方案1】:

    如“When should you make a branch”中所述,您使用分支来隔离开发工作。
    在您的情况下,您将隔离您正在处理的解决方案中的每个项目。
    这将允许:

    • 中间提交,每个项目的项目
    • 每个项目的 QA 测试

    但这也需要在一个公共分支中合并,以便将所有项目作为一个解决方案一起测试。

    See HgInit(来自 Joel Spolsky)了解有关此类协作工作流程的更多信息。

    在“存储库架构”中,Joel 说明了在两个不同团队中隔离的两个开发工作,但最后仍然包括同步(合并)工作。

    【讨论】:

    • 是的,我在发布后设法找到了,但在发布前查看时找不到。去搞清楚。我不确定的是这些项目都是基于应用程序启动加载的 DLL 文件。根据用户的选择,将启动一个完全包含在上述 DLL 中的“应用程序”,该 DLL 是一个完全包含的项目,包含 winforms 及其所需的一切。话虽如此,我们是一个 3 人的小团队,是否需要为每个分支维护多个本地副本?
    • @Mustafa:如果这些 DLL 可以很容易地在每个项目中(重新)生成,那么它们不应该首先进行版本控制。除此之外,如果每个要测试的项目都需要其他项目的稳定版本,那么使用 Mercurial subrepos 的方法可能是合适的(并且仍然与分支兼容):见stackoverflow.com/questions/2083393/…
    • 啊,我一定没有说清楚。 DLL 本身没有被跟踪,但它们的来源显然是。构建解决方案就足够了。我将研究 sub-repo 的想法,我只需要检查它是否可以在 bitbucket 上实现!谢谢老兄,标记为已回答,但我可能会回复。
    • @Mustafa: 1/ bitbucket 支持 subrepos(例如参见 groups.google.com/group/bitbucket-users/browse_thread/thread/…) 2/ 您确实市场上的回答被接受;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-07
    • 1970-01-01
    • 1970-01-01
    • 2011-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多