CVSNT安装配置及使用手记

    技术2022-05-11  136

    I.    CVS Server/Client Setup 

    Server: CVSnt 2.0.51d            (http://www.cvsnt.org/archive/, all versions of CVSnt download)

    Client:  winCVS 1.3.20.2 (CVSnt 2.0.51d inside)            activeTCL 8.4.1.0-2             python221

    NOTICE

        1. The versions of winCVS/CVSnt must not conflict;

        2. Server can only be installed on WinXP/2000/2003 system;

        3. Shut up any File Protecting System when running setup, e.g. Norton Antivirus;

        4. Shut up WMI service(as to win2003) when installing CVSnt. 

    II.   CVSnt Repository Management  

        (All operations on Server machine)     1. Open CVSnt 'Service Control Panel';

        2. If service started, stop it;

        3. 'Repositories' -> 'add' -> imput repository's location (eg. 'c:/cvs/repository1') ;

        4. change the repository's name (eg. '/repository1');

        5. create a directory and then set 'Advanced' -> 'Temporary' located to it;

        6. Click 'Apply' button (ESSENTIAL!);

        7. start service;

    ESSENTIAL

        The repository and temporary directory must be on a LOCAL (not networked) disk on the CVSNT server.

    III.   CVSnt User Management    A.  Windows and CVS combined authentication (default)

        (omitted)

    B. CVS authentication alone :

    DEMANDS

        1. Unselecte 'impersonation' on CVSnt service control panel;

        2. Selecte 'use local user for pserver authentication instead of domain user';

        3. 'cvs service' and 'cvs lock service' started;

        4. Use 'pserver' protocol.

    STEPS:

        (All operations on client machine)

        1. Create cvs user 'cvsadmin' by default admin user 'Administrator' and give it full right on 'CVSRoot' 

           (1) Run winCVS;

           (2) Login repository as default admin user 'Administrator':  'Admin->Login',  

                CVSRoot=:pserver:Administrator@serverIP:/repositoryNAME

                input password of user 'Administrator' on the server machine .

           (3) Create temporary directory 'c:/cvs/admintemp';

           (4) Check out module 'CVSRoot' to this temporary directory, move to directory 'CVSRoot';

           (5) Add new cvs user 'cvsadmin' for current repository, execute command:

                    cvs passwd -a cvsadmin   

                    ( set password for 'cvsadmin' )

           (6) Give 'cvsadmin' full right on 'CVSRoot',  execute:

                   cvs chown cvsadmin    ( set cvsadmin an owner of directory 'CVSRoot' )

                   cvs chacl default:n   ( cancel all rights of the others ) 

                   cvs chacl cvsadmin:cwr    ( give cvsadmin full right: CREATE, WRITE, READ )

           (7) Remove temporary directory 'c:/cvs/admintemp' (Close winCVS first);

        2. Make user 'cvsadmin' an administrator of this repository

           (1) Login repository as user 'cvsadmin':  'admin->login',  CVSRoot=:pserver:cvsadmin@serverIP:/repositoryNAME 

                input password of user 'cvsadmin'.

           (2) Create directory 'c:/cvs/admin' for cvs administration;

           (3) Check out module 'CVSRoot' to this directory;

           (4) Move to directroy 'CVSRoot', create a file 'admin' with the content 'cvsadmin', execute:

                    cvs add admin     ( add file 'admin' to repository )

                    cvs commit -m "no msg" admin        ( check in file 'admin' )

                    (OR: cvs ci -m "no msg" admin)

           (6) Modify the file 'checkoutlist' by adding ' admin  error message' at last line, execute:

                    cvs commit -m "no msg" checkoutlist ( check in this modification )

           (7) By now, 'cvsadmin' has already become an administrator of this repository;

        3. Further user-management

           (1) Add new user, execute:

                    cvs passwd -a username

           (2) Change a user's right:

                    cvs chacl -R [-r tag] {user|default}:[{[r][w][c]|[n]}] [directory...]

                    -R, Recursively set permissions

                    -r, Set permissions on specific branch

    REMARK

        1. All opertions above can accomplished in winCVS 'Admin->Command Line' or a dos command window, eg. login:

                    set cvsroot=:pserver:cvsadmin@server:/repo

                    cvs login

        2. As to cvs users, just one specific repository be concerned. 

        3. As to user's rights, just one specific directory be concerned.

    IV.   Project Management    

        1. When a new directory (client project) was checked in to CVSnt (to create a new module),  

           it must be removed from client machine and checked out from CVSnt so that it could be under CVS control.


    最新回复(0)