SVN到GIT的迁移导致了巨大的GIT Repo

时间:2013-08-21 13:42:27

标签: git svn

我在Git服务器上执行了以下命令,将Subversion存储库迁移到Git存储库:

mkdir xyz.git
git init --bare xyz.git
svn git clone http://x.y.x.y/svn/CLF xyz.git

du -sh xyz.git

执行此操作后,Git仓库的大小显示为Subversion仓库的两倍。 我是否错误地运行了迁移?

1 个答案:

答案 0 :(得分:1)

有一个项目可以帮助您将svn转换为git,https://github.com/nirvdrum/svn2git。这使用git-svn。但是,听起来你已经完成了克隆(这可能需要一段时间)或许可以看看这里的指南,因为只使用git-svn克隆是不完美的:

http://git-scm.com/book/en/Git-and-Other-Systems-Migrating-to-Git

但是在回答你的问题时,git存储库的大小可能会有所不同,具体取决于它们是否已打包。 loose 格式允许更快速地访问repo,并且正如您所料,打包格式更小。您可以通过执行以下命令获取git来打包存储库:

git gc --prune=now --aggressive
git repack

这也会截断一个名为reflog的工具,它会跟踪您的编辑随时间的变化情况。这通常在使用代码时使用,而不是以这种方式执行导出。

您应该找到存储库完全打包时它小于完整的subversion存储库。