简体   繁体   English

cvs2git需要什么来自CVS存储库?

[英]what does cvs2git need from a CVS repository?

I have a large CVS repository (~ 30 GB), and to convert a single module using cvs2git it seems that all I need is: 我有一个大的CVS存储库(~30 GB),并使用cvs2git转换单个模块似乎我只需要:

  • the CVSROOT directory CVSROOT目录
  • the module's directory 模块的目录

The module's directory should, of course, be in the same relative location to CVSROOT as it is in the original repo. 当然,模块的目录应与CVSROOT位于与原始仓库相同的相对位置。

I'm interested in this because I have to do the conversion work on a separate box, and I don't want to copy the entire repo if I don't have to. 我对此感兴趣,因为我必须在单独的盒子上进行转换工作,如果我不需要,我不想复制整个仓库。

First question is: Is this all that cvs2git needs for converting a single module? 第一个问题是: cvs2git需要转换单个模块?

Second question is: What exactly does cvs2git need from the CVSROOT directory? 第二个问题是: cvs2git从CVSROOT目录cvs2git需要什么? After many years the CVSROOT directory has accumulated a lot of cruft (it stands at about 2 GB now), and I'd like to copy only the files I need. 多年以后,CVSROOT目录累积了很多东西 (现在大约2 GB),我只想复制我需要的文件。

All you need is the module directory and a CVSROOT directory. 您只需要模块目录和CVSROOT目录。 The CVSROOT directory must be present, but it can be empty; CVSROOT目录必须存在,但它可以为空; eg, it would be enough to do a "mkdir CVSROOT" at the right place. 例如,在适当的地方做“mkdir CVSROOT”就足够了。

It is also not even required that the module directory be in the same relative location to CVSROOT as it is in the original repo. 甚至还不要求模块目录与CVSROOT位于与原始仓库中相同的相对位置。 Only the part of the directory structure that you want in the resulting git repository is needed. 只需要在生成的git存储库中需要的目录结构部分。

Since cvs2git directly works on the file level. 由于cvs2git直接在文件级别上工作。 It really doesn't need much more than the relevant module itself. 它确实不需要比相关模块本身更多。 As mhagger said, CVSROOT is necessary but can be empty. 正如mhagger所说,CVSROOT是必要的,但可以是空的。 It is even possible to move module directories and/or subdirecories around, join or split them, to migrate them into a new directory structure. 甚至可以移动模块目录和/或子目录,加入或拆分它们,以将它们迁移到新的目录结构中。

I used this to join some connected modules to one git project and to move away some big and static lib/ folders (binary data) into a separate git sub-project. 我用它将一些连接的模块连接到一个git项目,并将一些大的和静态的lib /文件夹(二进制数据)移到一个单独的git子项目中。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM