如何将连续的SVN和BZR repos加入GIT?

时间:2012-01-25 11:51:19

标签: git svn bazaar

一个奇怪的请求,我承认......

我们有一个目前在Bazaar管理的项目,但以前存储在Subversion中。然而,相反,复制历史,以前的开发人员只需一次导出SVN回购并开始一个全新的BZR回购。

因此,我们有以下内容:

SVN: A-B-C-D
BZR: E-F-G-H

我想要的是:

GIT: A-B-C-D-E-D-G-H

由于

1 个答案:

答案 0 :(得分:0)

git filter-branch可能最简单。实际上,这是filter-branch文档中的一个示例:

  

要将提交(通常位于另一个历史记录的顶端)设置为当前初始提交的父级,以便将其他历史记录粘贴到当前历史记录之后:

       git filter-branch --parent-filter 'sed "s/^\$/-p <graft-id>/"' HEAD

所以这里<graft-id>是你的提交D,假设你正在从一个由BZR提交E到H的分支工作。所以我假设你已经使用迁移工具将svn和bzr历史记录转换成git ,并将它们作为单独的分支导入到单个存储库中。