【问题标题】:best practice for maintaining two differents codes in one mercurial repository在一个 mercurial 存储库中维护两个不同代码的最佳实践
【发布时间】:2016-06-10 11:23:20
【问题描述】:

我目前正在从事两个不同的子项目。到现在为止,我每个都有两个不同的 mercurial 存储库。我想将两个 sub_projects 全部保存在一个存储库中,但是我仍然希望能够同时和单独地处理两个 sub_projects,而不必在一次提交中同时提交来自两个子项目的更改。我的两个子项目是完全独立的。我希望能够独立提交并查看每个子项目的历史。

我想知道在这种情况下最佳做法是什么。我想将这两个子项目都放在一个仓库中,因为这将使交付给客户变得更加容易。

非常感谢您的帮助,

【问题讨论】:

    标签: mercurial


    【解决方案1】:

    如果是两个不相关的代码库,那么我的建议是不要将它们合并为一个 - 这不会使处理变得更容易。

    但是,如果您打算创建一个通用代码库,则有不同的策略:

    a) 只需将一个项目拉入另一个项目即可将它们合并到一个存储库中。这要求两个存储库中没有同名文件。或者,使用 convert 扩展名将它们放入单独的路径中,然后将转换后的存储库拉入一个。您必须手动注意进行提交,以便一次只接触一个项目的文件。

    b) 利用子项目。单独子项目最好的选择是使用mercurial的subrepository扩展名;建议使用一个浅的父存储库,其中两个子项目就是:子存储库。请注意仔细阅读子存储库扩展的文档 - 它被称为“最后的功能”,因为它确实有其粗糙的边缘。但是,您可以单独提交单个子项目而无需触及另一个子项目,并通过在记录子项目状态的父 repo 中进行提交来创建项目的公共状态。

    还有类似的替代扩展,如 guest repo 和类似的 - 也许它们更适合您的用例。

    【讨论】:

      猜你喜欢
      • 2021-11-10
      • 2019-10-14
      • 2012-07-03
      • 2015-09-21
      • 2018-08-26
      • 2015-09-07
      • 1970-01-01
      • 2018-07-27
      • 2012-04-28
      相关资源
      最近更新 更多