mercurial - 使用 Mercurial 来维护程序的两个版本——克隆还是命名分支?

标签 mercurial branch

我们正在使用 Mercurial 来管理一个项目,但我们现在想要创建同一项目的“精简版”(即删除或简化了某些功能的版本)。

由于精简版将与完整版共享其大部分代码,我们正在考虑是否更好:

  • 创建原始项目的克隆并将每个项目分开。
  • 使用命名分支在同一个存储库中维护项目的两个版本。

  • 我们对版本控制软件还很陌生,这将是我们第一次使用命名分支。有人可以帮助概述每种方法的优缺点。哪种方法最容易在两个项目之间维护错误修复?

    谢谢,

    安德鲁

    最佳答案

    您可以使用 中的任何一个4种方法 - 它们或多或少具有相同数量的功能,仅在用于同步代码库的命令上有所不同

    对于“单独克隆”解决方案“...保持每个项目独立”是坏事(tm)并且违反了 DRY 原则:重用代码(Lite 版本)必须在一个地方维护,并且从 Lite 存储库中提取的核心更改为完整的 repo

    备注 :

    当我写大约 4 个解决方案时,我想到了,除了克隆和命名分支

  • MQ(精简版是存储库中的变更集,完整版是位于同一存储库中的 Lie 之上的 MQ 补丁
  • 子存储库|Guestrepo(精简版为 super 存储库,完整版功能为 super 存储库中的一个或多个子存储库)
  • 关于mercurial - 使用 Mercurial 来维护程序的两个版本——克隆还是命名分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17145594/

    相关文章:

    merge Mercurial fork,更改分支

    svn - 为什么我会得到 hg : unknown command 'convert' althought running hg 1. 7.3?

    version-control - 我应该使用push还是switch在bazaar中创建分支?

    version-control - 有没有办法在不使用版本控制分支的情况下开发/发布功能 'when ready'?

    git - 删除 git 历史记录中具有多个分支的特定提交?

    mercurial - hg 服务于 MacHg

    windows-7 - 使用 Mercurial 的 hg 克隆会抛出 "getaddrinfo failed"错误(Windows 7)

    Mercurial 在共享网络驱动器上?

    git - git 的标签和分支有什么区别?

    svn - 使用奇数分支结构时 Git-svn 分支软管 dcommit