我有一个大型的CVS存储库(~30 GB),要使用cvs2git
转换单个模块,似乎我所需要的只是:
- CVSROOT 目录
- 模块的目录
当然,模块的目录应该与原始存储库中的 CVSROOT 位于相同的相对位置。
我对此很感兴趣,因为我必须在一个单独的盒子上进行转换工作,如果没有必要,我不想复制整个存储库。
第一个问题是:这是cvs2git
转换单个模块所需要的吗?
第二个问题是:cvs2git
CVSROOT 目录中到底需要什么?多年后,CVSROOT目录已经积累了很多东西(现在大约2 GB),我只想复制我需要的文件。
您只需要模块目录和 CVSROOT 目录。 CVSROOT 目录必须存在,但它可以为空;例如,在正确的位置做一个"mkdir CVSROOT"就足够了。
甚至不需要模块目录与 CVSROOT 位于原始存储库中的相同相对位置。 在生成的 git 存储库中,只需要所需的目录结构部分。
由于 cvs2git 直接在文件级别工作。它真的不需要比相关模块本身更多的东西。正如mhagger所说,CVSROOT是必需的,但可以是空的。甚至可以移动模块目录和/或子目录,连接或拆分它们,以将它们迁移到新的目录结构中。
我用它来将一些连接的模块连接到一个 git 项目中,并将一些大的静态 lib/文件夹(二进制数据)移动到一个单独的 git 子项目中。