我有一个旧的Git回购,把它app
。 于是,一年后,我想从头开始重新构建应用程序,所以我做了一个新的回购,称之为app-2
现在,我意识到我应该刚刚作出了一个新的分支或东西,而不是一个新的回购,因为我想移动的历史app-2
之上app
,然后摆脱app-2
这样app
现在已经所有的历史app
+ app-2
这是可能的吗?
更新:
我试着“正在重置”的app
通过删除所有文件回购app
(除了.git
目录),并作出承诺。 然后:
cd ~/Projects/app-2
git format-patch --stdout --root master > ../app/app-2-patches.txt
cd ../app
git am app-2-patches.txt
但是,我在那里我有分支机构的地方有冲突app-2
是否有可能从应用提交app-2
同时保持历史的分支结构app-2
还可以使用Git的嫁接点这个。 首先拉动的历史app
到app-2
从远程,然后按照例如,在说明这个答案 。
第一步是获得一个回购的两个应用程序; 第二步是一些明智的方式合并。
在第一步中我会说推所有的存储库分支的APP-2在应用程序存储库分支:
$ cd /path/to/app-2
$ git remote add app-repo /path/to/app
$ git push app-repo master:app-2-master # master in app-2 goes to app-2-master in app repo
# repeat for other branches in app-2
现在过的应用程序库中,您有它的所有分支机构和所有的应用程序,2个分支。 比方说,你(要)认为APP-2从应用程序的。 然后,你变基所有应用-2上的应用程序:
$ cd /path/to/app
$ git checkout app-2-master
$ git rebase master
这可能涉及大量的工作来解决冲突,但混帐也将被做工作的负荷为您服务。