Skip navigation.
Home
l'art pour l'art

initialize repository

CVS vs. Subversion Comment
Create Repository CVS cvs -d path init repository is a directory path for the svnadmin command, the other command, svn, will use the URL syntax.
Subversion svnadmin create repository
Import Sources CVS cd src
cvs -d repository import module vendortag releasetag
Subversion doesn't know of tags or branches. Instead you use the 'snv copy' command to create a copy of the directory you want to preserve. Subversion takes care that this is efficient.
Because of this its it suggested, that the root of your directory contains three directories:

  • trunk: is where you store the main or HEAD branch
  • tags: is where you copy the 'tags' to
  • branches: is where you copy the 'branches' to
Subversion svn mkdir file://repository/tags
svn mkdir file://repository/branches
svn import src file://repository/trunk


or in case of a remote repository:

svn mkdir https://repository/tags
svn mkdir https://repository/branches
svn import src https://repository/trunk

Checkout CVS cvs -d repository co [-d directory] module Checkout of a file/directory from the repository.
While CVS keeps its information within a CVS/ directory, Subversion uses a .svn/ directory which contains a complete copy of the checked out files. This will be used for comparation during the next commit which makes commits fast over slow network connections.
Subversion svn checkout file://repository/trunk module [directory]

Subversion comes with two different database backends: Berkley DB (BDB) and Filesystem Filesystem (FSFS). Berkley DB uses less space than FSFS but had some issues in that past which could corrupt the database because Subversion uses it in some unusual ways.

In case FSFS is not the default database backend, you can specify it manually:

svnadmin --fs-type fsfs create repository