我有四个独立的项目。他们有自己的git存储库。所有项目的分支机构名称相同。
/project/
/project/projA/
/project/projA/.git/
/project/projB/
/project/projB/.git/
/project/projC/
/project/projC/.git/
/project/projD/
/project/projD/.git/
所有git存储库都有相同的分支名称,当然还有它们自己的主分支。
问题
我想将所有项目合并为一个项目,如下所示:
/Project/.git/
/project/projA/
/project/projB/
/project/projC/
/project/projD/
但
我想保留所有分支的历史记录。
ps ->我对所有存储库都有相同的分支名称。例如:用于所有四个项目的分支名称: V6-004
详细信息
我尝试了子模块和子树,但这两者都不能解决问题。
我也试过这个。
$ mkdir new_parent_project
$ cd new_parent_project
$ git init
# Now we need to create the initial commit. This is essential.
$ touch README.md
$ git add README.md
$ git commit -am "initial commit"
之后
# merge project ProjA into subdirectory ProjA
$ git remote add -f ProjA http://GitUrl
$ git merge -s ours --no-commit ProjA/V6-006
$ git read-tree --prefix=ProjA/ -u ProjA/V6-006
$ git commit -m "merging ProjA into subdir: ProjA"
之后
# merge project ProjB into subdirectory ProjB
$ git remote add -f ProjB http://GitUrl
$ git merge -s ours --no-commit ProjB/V6-006
$ git read-tree --prefix=ProjB/ -u ProjB/V6-006
$ git commit -m "merging ProjB into subdir: ProjB"
但
项目合并了,但我只有V6-006的历史。但我没有其他分支机构的历史记录。
https://stackoverflow.com/questions/26502970
复制相似问题