【发布时间】:2013-06-12 15:13:48
【问题描述】:
我有一个 module 存储库,其中包含一些分支 branchA、branchB 等。我想将这些分支导入到一个 项目中 使用 git 子树的存储库。我像这样设置我的 project 存储库:
git remote add module /path/to/module.git
git fetch module
git subtree add -P folderA module/branchA
git subtree add -P folderB module/branchB
这似乎按预期工作,并且我从 folderA 和 folderB 中的正确分支获得了文件和历史记录。
现在我在 module 的 master 分支中进行了更改,我将其应用于 branchA 和 branchB (通过变基 branchA 和 branchB)并且想要更新 project。
git fetch module
将这些更改提取到 project。但是,当我这样做时
git subtree pull -P folderA module branchA
git subtree pull -P folderB module branchB
只有 folderA 得到更新。对于 folderB,我收到以下消息:
From /path/to/module.git
* branch branchB -> FETCH_HEAD
Already up-to-date.
并且更改不会合并。显然,git 没有正确考虑到更改已应用于路径 folderA,而不是 folderB。有谁知道我可以做些什么来使这个场景起作用?
【问题讨论】:
标签: git-subtree