【问题标题】:Project dependent on other project from multiple sources项目依赖于来自多个来源的其他项目
【发布时间】:2014-02-05 06:53:44
【问题描述】:

所以我有一个项目 A,它使用项目 B。所以我继续将 B 标记为项目 A 的子树,并不时将 B 中的更改合并到 A 中。还有一个我想使用的项目叫做 C,C 也是项目 B 的子树。但我想做的是在我的项目中独立添加 C 作为子树,并且也没有代码库的 2 个副本项目 A 中的 C。我该如何解决这个问题?任何帮助将不胜感激。 谢谢。

【问题讨论】:

    标签: git git-submodules git-subtree


    【解决方案1】:

    子树的问题在于 C 是 B 历史的一部分。

    如果你可以引用没有 C 的 B 作为子树,那么你可以走子模块路线:

    • 将 C 作为子模块添加到 A
    • 将 C 作为子模块添加到 B
    • 确保 A 和 B 引用相同的 C SHA1
    • 仅更新 A 中的 C(git 子模块更新),以便仅获取一个 C 源。

    这个想法是:

    • 保留对 C 的两个引用(以检测 A 使用的 C 与 B 使用的 C 之间可能存在的差异)
    • 仅更新两个 C 子模块之一。

    【讨论】:

      猜你喜欢
      • 2016-01-13
      • 1970-01-01
      • 2014-05-05
      • 2023-03-05
      • 1970-01-01
      • 2020-08-17
      • 1970-01-01
      • 2020-12-20
      • 1970-01-01
      相关资源
      最近更新 更多