【问题标题】:How to have different branches in git point to different branches of the same submodule [duplicate]如何让git中的不同分支指向同一个子模块的不同分支[重复]
【发布时间】:2021-03-15 22:37:59
【问题描述】:

我有一个仓库 X(假设它有分支 XB1、XB2,并且我已经签出了分支 XB1)。我添加了一个子模块 Y(让我们假设这个子模块有分支 YB1、YB2)。我在 X 中添加了子模块 Y(分支 YB1)。

有没有办法将分支 YB2 作为子模块添加到分支 XB2 中?

总之,我正在寻找的是,当我结帐 XB1 时,我想使用 YB1,而当我结帐 XB2 时,我想使用 YB2。

不确定以上是否可以在 git 中实现,但想问一下。

【问题讨论】:

标签: git git-submodules


【解决方案1】:

是的,这是可能的。添加子模块时,可以设置跟踪哪个分支。例如,检查this tutorial, chapter 3.1

但是,问题可能出在合并您的分支时。你的两个分支实际上将使用不同的子模块 - 所以合并冲突是可能的。

如果您不打算合并它们,而只是想作为单独的开发目标保留,那么请考虑创建存储库的分支并分别为每个版本保留开发。

【讨论】:

  • 虽然您可以在git submodule add 时间设置分支名称,但它基本上是未使用的。子模块代码不适用于分支名称;它适用于原始提交哈希 ID。
猜你喜欢
  • 2018-07-16
  • 2012-04-06
  • 2020-08-07
  • 2017-05-20
  • 2011-12-29
  • 2023-02-07
  • 2020-03-01
  • 1970-01-01
相关资源
最近更新 更多