将单独的git存储库合并到一个存储库中,按文件夹进行组织

时间:2015-07-26 20:56:06

标签: git github merge directory repository

我正在尝试组织我的项目文件夹,其中包含我尝试过的所有/r/dailyprogrammer个问题。目前,每个挑战都有自己的文件夹,因此也有自己的git repo。

我想做的是制作一个大型回购并将我的所有挑战合并到大型回购中的自己的文件夹中。那样在GitHub上,我没有百万不同的回购;而是在一个大型仓库中,按文件夹组织。

这是我当前的文件夹结构,其中包含所有小git repos:

   .
   |-201PracticalExcerise
   |-204Hard
   |-204Intermediate
   |-214Hard
   |-215Easy
   |-215Intermediate
   |-218Easy

我试过关注this guide。但每次我进行合并时,git repos中的文件都会被复制到大型仓库的根目录中。然后,当我将这些文件移动到他们自己的文件夹中时,我丢失了提交历史记录。

我无法弄清楚如何让文件进入单独的文件夹。

如何获取上面的每个文件夹,将它们合并到一个具有各自提交历史记录和自己的文件夹的大型仓库中?

1 个答案:

答案 0 :(得分:1)

首先,请务必遵循指南中的评论:

  

确保在执行之前至少创建一个初始提交   子树合并。

如果这不起作用,您可以尝试执行以下操作:

  • 对于每个repo,进行提交将代码放在最终想要的子目录中
  • 然后,按照教程

例如,在201PracticalExcerise repo中,执行以下操作:

  • mkdir 201PracticalExcerise
  • git mv [all files at root level] 201PracticalExcerise

然后对每一个重复(因此他们已经在正确的子目录中)。

我先尝试一下,看看它是否有效。