2016-12-02 133 views
0

真的可以在这里使用一些帮助。我创建了一个回购及回购中已经做了不同的回购以下步骤子树合并:通过Git获取合并远程回购到另一个回购

http://nuclearsquid.com/writings/subtree-merging-and-you/

所以我的结构是这样的:

Parent Folder 
     Component 
     masterbranch 
     Tests 
     testapi 
      masterbranch 
     testnr 
      masterbranch 
     testres 
      masterbranch 

设置,最多是没有问题的。但是我很难添加每个子树的开发分支。所以对于上面的结构,我需要在回购中的每个主分支旁边的develop分支。

但是,这只适用于一个分支(主),因为我在.bowerrc文件中得到一个git重叠错误,并且当我尝试按照链接中的步骤合并远程/开发时,它显示“无法绑定”以上。

我试过在组件和测试中创建了一个开发分支,然后在每个远程仓库中进行合并(即在Component仓库和新创建的开发分支中,我做了一个git merge remote/develop。)。但是,当我这样做时,由于某种原因我遇到了合并冲突......我不知道为什么会发生这种情况。

在上面的组件和测试中,将远程开发分支合并到开发分支中的最佳方式是什么?

帮助表示赞赏。谢谢

+0

仅供参考* nix上的'tree'命令会生成目录树结构,如您所包含的目录树结构。 – Pockets

回答

2

如果你想把master和develop分支从一个新的remote repo放到同一个文件夹中,git read-tree不能这样做,尤其是你在master和develop分支中有相同的.bowerrc文件。 git read-tree命令将拒绝覆盖原始索引文件(remote/master)中已存在的组件条目。

因此,对于您的情况,您可以改用git子模块。它可以将远程分支放入同一个子文件夹。

+0

大多数文件在主文件和开发文件之间是相同的,唯一的区别是实际组件的编写代码...因此,如果我使用git read-tree命令来设置我的初始结构, ..我不能在我的“组件”回购中创建一个新的“开发”分支,切换到“开发”分支,然后做一个“混帐远程名称/开发”合并到新创建的开发分支?为什么会因为它是一个空的“开发”分支而给我带来兼并冲突?谢谢 – bschmitty

+0

是的,你不能使用git阅读树来添加与主分支在同一文件夹中的开发分支。如果你创建了一个新开发的分支,实际上它并不是一个空的开发分支,因为你已经创建了。你可以切换到新的开发分支,你会发现'Parent Folder','Component'和'Tests'文件夹中的文件仍然存在。 –