- Marcus' HomeSitemap|Contact

CVS help - Installation of CVSNT

Diese Seite wurde zuletzt am 09.07.2004 geändert.

How should the server be organised?

First we should think over what structure our server should have. Where to store repositories and where temporary files. And also what protocol do we want to support.

I prefere a tree like this:
<drive>:\cvsnt {This is the path we want to install cvsnt to.}
<drive>:\cvstemp {This is the folder cvs should use for temporary files.}
<drive>:\repositories {This is the folder where our repositories should be stored. Note: This isn't one!}

Where <drive> should fit the one you want to use, on my machine it is drive X.

So what protocol do we want to offer? The best way would be to only use one protocol, but there could be problems to some users, so we'll try to support some more. The securest protocol seems to be :ext: which uses SSH. Sorry but I do not have any experiences with that and so can't help you here. So we'll supply the :sspi: protocol. To use this protocol, your clients need to run Windows NT4, 2000 or XP. :sspi: works over TCP/IP and so can be better handled in wide networks, than the next protocol. We could also implement :ntserver: protocol, but won't do because it works with named pipes and these are never used on Internet for example, it'll phase out. Instead we'll implement the :pserver: protocol, which is less secure than any other but widely supported and almost always used over the internet. So we want to support the :sspi: and the :pserver: protocols.

Setting up the server

Note: This part is mainly taken from Bo Berglund's article.

Make sure to follow thies steps:

  1. File system type

    Make sure your system is only using NTFS file system! If not then convert using the NT tool for conversion (convert.exe). Also make sure you are logged on as an administrator of the PC (using an account with administrative priviliges).
  2. Get the latest release of CVSNT

    Download the latest CVSNT installation from, currently Build 65. (2003-01-03).
  3. Create CVS directories

    Create two directories on the target machine, <drive>:\repositories and <drive>:\cvstemp.
  4. Directory security and permissions

    Give <drive>:\cvstemp security settings that allows full control for all accounts including SYSTEM. Important: The cvstemp directory must NOT be located in either C:\WINNT\Temp or anywhere in the "C:\Documents and Settings" tree because these locations have imposed restrictions on user access in Win2000 and Win-XP!
  5. Install CVSNT

    Run the downloaded CVSNT setup file and make sure to change the installation path to <drive>:\cvsnt
  6. Path to CVSNT

    Note that the installer probably complains about being unable to set the path environment variable at the end. If so: Open Control Panel/System and go to the Environment tab so you can set the *system* variable path. (Location of this setting page varies between NT4, Win2000 and XP, you will have to look around a bit). Add ;<drive>:\cvsnt to the end of path and save it (Apply).
  7. CVSNT Control Panel configuration

    Now open the CVSNT control panel applet and do the following:
    1. Check that the service is not running (Start button is enabled). If it has started then stop it.
    2. On the tab "Repositories" check the box for prefix and browse to the directory <drive>:/repositories using the ellipsis button.
      Note: When you navigate to the root of your CVS repositories to set the prefix, you cannot use the drive itself - you must go down at least one level in the directory tree (like to <drive>:/repositories). This is because the control panel GUI adds an erroneous extra slash to the prefix for drive roots and then the prefix stops working....
    3. Use the Add button to add a repository. Enter "testrep" (without the qoutes) after the prefix in the box that appears. Accept the offer to create the repository. You can have several separate repositories on the same server, in that case you will use the Add button once for each repository you need. Once the list of repositories contain those you want you are done here.
      Note: If you use Repository prefix and have more than one repository they must all be located at the same top directory (= the prefix). There is only one setting for Repository Prefix on CVSNT.
    4. Go to the Advanced tab and check all checkboxes.
    5. Also set the Temporary Directory using the ellipsis button. It should be set to <drive>:\cvstemp
    6. Now click the Apply button! This is really important, nothing will happen unless you do this!
  8. Start the server

    Go back to the first tab and click the Start button. After a few moments the Stop button will be highlighted. Now CVSNT runs.

Setting up the client

Note that CVSNT is a server and a command line client, but has no GUI part. So without installing another software you can access the server only through command line. The prefered frontend is WinCVS, but you can use any other CVS client as well. I, my self do it all from the command line.