将内容从一个git存储库移动到另一个?

时间:2012-09-25 07:02:46

标签: git

我在xp-dev.com上有一个当前的git存储库,让我们调用它A.现在我在xp-dev.com创建了一个新项目,它有自己的git存储库,让我们称之为B.现在,A有其中包含很多已提交的代码,我想将A的所有内容(包括commit-history)移动到B.而B是空的,它基本上只是一个没有签入代码的初始化存储库。

我该怎么做?我试图自己解决这个问题,但似乎几乎不可能只是说“将A的内容推入B”......

拜托,帮助我,我昨晚花了几个小时才能做出更有成效的事情:)

2 个答案:

答案 0 :(得分:3)

我是git的新手,我不知道xp-dev.com的细节,但你应该可以用这样的东西来做。

首先,克隆并镜像原始存储库

git clone --mirror orig-host:A

然后将其推到新家(如果已经创建了回购)

cd A
git push --mirror new-host:B

注意:这对新存储库具有破坏性。首先离线尝试可能值得。

答案 1 :(得分:2)

尝试以下顺序:

git clone orig-host:repo
cd repo
git remote add target dest-host:repo
git push target master
# repeat the last command for every unmerged branch