将远程分支合并到文件夹中

时间:2016-03-05 18:20:42

标签: git merge

有一个存储库OTHER,其中包含2个分支masterb1

我只对master

OTHER分支感兴趣

所以,我的存储库MY有2个分支masterother_import

我在remote个回购中添加了一个MY,指向OTHER upstream

现在,当我想要了解OTHER master git checkout other_import的最新更改时,

git fetch --all

git merge upstream/master

master

然后合并我的other_import更改并将master合并到我的OTHER

到目前为止它运作良好。

OTHER |-F1 |-F2 存储库具有以下文件夹结构:

MY
  |-F1
  |-F2
  |-Project

很好,所以自从第一次合并以来,我一直在这样的结构中工作

MY
  |-WrappedOther
    |-F1
    |-F2
  |-Project

但现在我需要改变结构:

git mv ...

所以我做了OTHER

但是现在,我不确定如何将MY合并到git merge upstream/master WrappedOther,而不会每次都有关于移动文件的大量冲突......

有没有办法将远程分支合并到文件夹中?

类似的东西:

heroku run

或者我该如何合并?

2 个答案:

答案 0 :(得分:0)

现在,这是将OTHER用作git submodule的完美用例。

基本上,其他项目现在作为子模块添加到原始项目中,然后您可以相应地从upstream获取更改到OTHER,同时获取project的更改到你的feature分支。

唯一的问题可能是您从OTHER项目修改代码 - 在这种情况下,提交的迁移将是一项任务。

答案 1 :(得分:0)

尝试使用git merge --strategy subtree upstream/master。应该减少冲突。

请参阅https://www.kernel.org/pub/software/scm/git/docs/git-merge.html

中的策略说明