我的项目遇到的一个问题是在一个分支 ( BRANCH1
) 中,我添加了 2 个子模块 ( MOD1
, MOD2
)。现在BRANCH1
已经搁置了。
现在我正在研究BRANCH2
,我只想要子模块(其余的更改还没有准备好)。我将如何添加MOD1
和MOD2
到我当前的分支?
我的项目遇到的一个问题是在一个分支 ( BRANCH1
) 中,我添加了 2 个子模块 ( MOD1
, MOD2
)。现在BRANCH1
已经搁置了。
现在我正在研究BRANCH2
,我只想要子模块(其余的更改还没有准备好)。我将如何添加MOD1
和MOD2
到我当前的分支?
如果有一个提交BRANCH1
的唯一效果是添加一个(或两个)子模块,那么您可以git cherry-pick
将该提交(或那些提交,如果您在单独的提交中添加子模块)到BRANCH2
. 如果子模块添加是作为您不想要其余部分的更大提交的一部分完成的,您可以使用git cherry-pick --no-commit
,然后在提交之前清除您不想要的更改。或者你总是可以只运行适当的git submodule add
命令BRANCH2
(这可能会或可能不会导致新clone
的子模块 - 我不能说我曾经遇到过这种情况,所以我不确定......) .