将git repo合并为子目录

时间:2020-01-10 23:16:40

标签: git

我的git repo有3个目录:

-dir1
-dir2
-dir3

我想将dir1和dir2移到dir3中:

-dir3
 -dir1
 -dir2

我如何将git repo从dir1和dir2合并到dir3中? 我需要在dir3历史记录中保存dir1和dir2 vcs提交

1 个答案:

答案 0 :(得分:1)

您可以在此处使用git子树。

首先,您必须通过获取它们来阅读存储库历史记录。

../dir3 $ git remote add rdir1 ../dir1
../dir3 $ git fetch rdir1

然后将遥控器的子树添加到您的存储库中。

../dir3 $ git switch master
../dir3 $ git subtree add -P dir1 rdir1/master

这将使用远程分支rdir1/master的树并将其设置为本地路径dir1,以便它成为dir3存储库的子树。

然后在完成后清理遥控器

../dir3 $ git remote remove rdir1

重复您要导入的其他任何存储库。

相关问题