CVSNT

 
 
CVS (Concurrent Versions System) is an open-source network-transparent version control system for individual developers to large, distributed teams.

CVSNT is made available under the terms of the GNU General Public License and can be installed on Windows (NT, 2000, XP) Linux and Unix installations.

The latest CVSNT version can be downloaded from: http://www.cvsnt.org

A GUI front-end for CVS can be downloaded from: http://www.wincvs.org/







How to add CVS users.



Information
none

Operating system used
Windows XP Home Edition Version 5.1 SP 2

Software prerequisites
CVSNT

Procedure
  1. Login in Windows XP as a user with administrator rights, e.g.: Mainuser

  2. The CVS users will be added on the host where the CVS repository is setup.
    First setup your cvsroot:

    set CVSROOT=:<protocol>:<hostname>:<repository>

    For example:

    set CVSROOT=:pserver:TARGA:/CVSRepository

    ATTENTION:

    If the CVSNT's Repository prefix feature is not used, for example the CVS location name is set to C:/CVSRepository, then you must use:

    set CVSROOT=:pserver:TARGA:C:/CVSRepository

    CVSNT 2.0.51:

    CVS Prefix

    CVSNT 2.5.03:

    CVS Prefix


  3. Create files passwd, admin, readers and writers:

    • Create passwd file: c:\CVSRepository\CVSROOT\passwd

    • In this passwd file you MUST add the current logged in real windows user account name with administrator rights, e.g.: Mainuser

      Note: Make sure there is NO empty line!

      CVSNT empty line

    • Create admin file: c:\CVSRepository\CVSROOT\admin

    • In this admin file add the same windows user login name as in the passwd file, e.g.: Mainuser

      Note 1: Make sure there is NO empty line!
      Note 2: This file determines who has administrator rights to the reprository.
      Only administrators can add or change another 's password.

    • Create writers file: c:\CVSRepository\CVSROOT\writers

    • In this writers file add the same windows user login name as in the passwd file, e.g.: Mainuser

      Note 1: Make sure there is NO empty line!
      Note 2: This file determines who has write access to the repository.

    • Create an empty readers file: c:\CVSRepository\CVSROOT\readers

      Note 1: Do not enter Mainuser in this file otherwise Mainuser will not have write access.
      Note 2: This file determines who has ONLY read access to the repository.

  4. Update file config:

    • Create a scratch directory: mkdir c:\scratch

    • cd c:\scratch

    • Checkout directory CVSROOT: cvs co CVSROOT

    • Edit file: c:\temp\CVSROOT\config

    • Add the following line: SystemAuth=no
      Note: This means that the created passwd file will be used.

    • Check in the file: cvs ci CVSROOT

    • Remove the scratch directory: del c:\scratch

  5. Set the user password:

    cvs passwd -a <windows_real_user>

    For example: cvs passwd -a Mainuser

    You should see the following:

    Adding user Mainuser@localhost
    New password: mysecret
    Verify password: mysecret

    Note 1: Do not use the windows password choose another! The password can be easily hacked.
    Note 2: The password has been added in file c:\CVSRepository\CVSROOT\passwd.



  6. Now you can add as many CVS users as you want:

    cvs passwd -r <windows_real_user> -a <cvs_username>

    For example:

    cvs passwd -r Mainuser -a jjones (enter password on prompt)
    cvs passwd -r Mainuser -a ksmith (enter password on prompt)

  7. You can determine what kind of access the users can have on this repository:

    • Write access, which means the user can modify the CVS repository.

      To grant a user write access, add the username in the c:\CVSRepository\CVSROOT\writers file.

      For eample: jjones
      Note: Make sure there is NO empty line!

      You might have noticed that we already have put is Mainuser in this file. If you have not done this you were not able to change the CVS repository!

    • Read-only access, which means the user cannot modify the CVS repository.

      To grant a user read-only access, add the username in the c:\CVSRepository\CVSROOT\readers file.

      For eample: ksmith
      Note: Make sure there is NO empty line!

  8. For security reasons, do not import the files: passwd, admin, readers and writers into the CVS repository.

  9. If you want to know how the users (jjones and ksmith) can remotely access the CVS repository, see quick guide "How to access a remote CVS repository."