git - 如何将 72GB 的转储文件导入 git?

标签 git import git-fast-import

我已经使用 cvs2git (cvs2svn) 迁移了一个旧的 cvs 存储库。结果转储文件现在有 72GB 大,我尝试通过 git fast-import 导入转储总是失败,因为内存不足错误:

fatal: Out of memory, malloc failed (tried to allocate 6196691 bytes)
fast-import: dumping crash report to fast_import_crash_13097
error: git-fast-import died of signal 11

因此我的系统有 32GB RAM 和 50GB 交换空间。我在带有 Git 1.8.3.4(gcc44、python2.6.8、cvs2svn2.4.0)的 Red Hat 5.3 上运行导入。我也尝试过取消限制堆栈大小和文件描述符,但内存错误仍然存​​在。

有人知道吗?

最佳答案

想法是:

然后您将 cvs(子)库导入到单独的 git 库中。
由于 git 是分布式的,而不是集中式的,因此您希望保持每个 git 存储库的大小合理。

关于git - 如何将 72GB 的转储文件导入 git?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18172876/

相关文章:

java - 在 Java 中从 Mallet 导入类

git - 从 bazaar 转换到 git 并同步它们的正确方法

git fast-import --export-marks 标志

git - 如何从 git 上丢失的提交中恢复代码?

git - 是否有使用 Github 提供的 noreply 电子邮件的 git push 解决方法,而不取消勾选 "Block command line pushes that expose my email"?

database - 我如何为非 GUI 自动页面/帖子导入编写 WordPress 脚本?

python - 如何建立具有相互依赖关系的Python类集合?

没有 blob 的 Git 克隆裸仓库

Git Diff 返回二进制文件不同但没有实际行

git - 如何修复私有(private)仓库 "invalid version"中的 "could not read Username"和 "go get"?