Mail users@cvs2svn.tigris.org if you have any questions or encounter any problems. You can also ask questions on IRC at irc.freenode.net, channel #cvs2svn.

What Is cvs2svn?

cvs2svn is a Python script that converts a CVS repository into a Subversion or git repository. It is designed for one-time conversions, not for repeated synchronizations between CVS and the target source code management system.

cvs2svn infers what happened in the history of your CVS repository and replicates that history as accurately as possible in the target SCM. All revisions, branches, tags, log messages, author names, and commit dates are converted. cvs2svn deduces what CVS modifications were made at the same time, and outputs these modifications grouped together as changesets in the target SCM. cvs2svn also deals with many CVS quirks and is highly configurable. See the comprehensive feature list.

You can get the latest release from the Downloads Area. Please read the documentation carefully before using cvs2svn.

For general use, the most recent released version of cvs2svn is usually the best choice. However, if you want to use the newest cvs2svn features or if you're debugging or patching cvs2svn, you might want to use the trunk version (which is usually quite stable). To do so, check out a working copy (using Subversion) from http://cvs2svn.tigris.org/svn/cvs2svn/trunk/ (user 'guest', empty password (i.e., just press return)).