TWiki . Admin . CVSAtSandstein
|
nasty questions
- Q: Who is going to use it? A: Everybody doing software development! Everybody wanting the latest WHATEVER.
- Q: Why should I do? A: source history, teaming up, source branches, ...
- Q: Besides its cool features. Why should I do? A1: To set you up in software heaven. A2: new CAAD policy (cause ludger says)
- Q: Ok. Ok. How should I use it A: I'll put links to serveral clients below. And read the structure chapter.
- Q: Is it easy to use? A1: Depends on you client. A2: CVS is a one way data sink. You can mess it up. And it is hard to recover.
- Q: It reminds me on something. What is it? A: TWiki is using CVS for its history.
client
cvs clients software
- cvs home
- eclipse
- cvl (mac, unix, win)
- tortoise (win)
cvs directory structure
sandstein is our cvs-server. the cvs root directory is /var/cvsroot. in short: sandstein.ethz.ch:/var/cvsroot.
below cvsroot we use the following structure:
documentation | documentation besides source documentation. papers, overviews, ... |
__ | kaisersrot | kaisersrot projects go here |
_ | _ | herrhugowart | herrhugowart documents goes here |
_ | _ | sogt | sogt documents goes here |
__ | bip | bip projects go here |
_ | _ | main | bip main project documentation |
__ | qoom | sep project |
_ | _ | diploma | diploma work documentation |
_ | _ | locator | prototype documentation |
__ | users |
_ | _ | matze |
_ | _ | droste |
_ | _ | __ | tartangenerator | something not belonging to any other project |
source | source code NO BINARIES |
__ | kaisersrot | kaisersrot projects go here |
_ | _ | herrhugowart | herrhugowart source goes here |
_ | _ | sogt | sogt source goes here |
__ | bip | bip projects |
_ | _ | main | bip main project |
__ | qoom | sep project |
_ | _ | diploma | diploma work source code |
_ | _ | locator | prototype source code |
__ | users |
_ | _ | matze |
_ | _ | droste |
_ | _ | __ | tartangenerator | something not belonging to any other project |
server setup
disable direct cvsuser logins
#####
##### as root@sandstein
#####
cat <<EOF >/etc/profile.d/cvsuser.sh
if [ `dirname $PWD` = '/home/CVSUSER' ];
then
exit
fi
EOF
cat <<EOF >/etc/profile.d/cvsuser.csh
if ( `dirname $PWD` == /home/CVSUSER ) logout
EOF
cvs setup
#####
##### as root@sandstein
#####
groupadd cvsuser
##### modify root user
usermod -G cvsuser root
##### setup directory
export CVSROOT=/var/cvsroot
mkdir $CVSROOT
chmod 2775 $CVSROOT
chown root:cvsuser $CVSROOT
cvs init
#### setup basic directory structure
mkdir kewl
cd kewl
cvs import -m "Created directory structure" documentation/bip bip start
cvs import -m "Created directory structure" source/bip bip start
cvs import -m "Created directory structure" documentation/kaisersrot kaisersrot start
cvs import -m "Created directory structure" source/kaisersrot kaisersrot start
cvs import -m "Created directory structure" documentation/game game start
cvs import -m "Created directory structure" source/game game start
cvs import -m "Created directory structure" documentation/misc misc start
cvs import -m "Created directory structure" source/misc misc start
cvs import -m "Created directory structure" documentation/users users start
cvs import -m "Created directory structure" source/users users start
cd ..
rmdir kewl
##### lock higher directory structure
chmod g-ws /var/cvsroot /var/cvsroot/documentation /var/cvsroot/source/
add project group
#####
##### as root@sandstein
#####
##### add another project group
export CVSROOT=/var/cvsroot
mkdir kewl
cd kewl
cvs import -m "Created directory structure" documentation/qoom qoom start
cvs import -m "Created directory structure" source/qoom qoom start
cd ..
rmdir kewl
chmod g+s $CVSROOT/documentation/qoom
chrp cvsuser $CVSROOT/documentation/qoom
chmod g+s $CVSROOT/source/qoom
chrp cvsuser $CVSROOT/source/qoom
modify user
#####
##### as root@sandstein
#####
usermod -G cvsuser droste
add caad user
#####
##### as root@sandstein
#####
NEWCVSUSER=nethzaccount
useradd -G cvsuser -d /home/CVSUSER/$NEWCVSUSER $NEWCVSUSER
passwd $NEWCVSUSER
add non-caad user
#####
##### as root@sandstein
#####
NEWCVSUSER=ifpossiblenethzaccount
PROJECTDESCR="project_name, extern, caad_member_in_charge"
useradd -G cvsuser -d /home/CVSUSER/$NEWCVSUSER -c "$PROJECTDESCR" $NEWCVSUSER
passwd $NEWCVSUSER
-- KarstenDroste - 20 May 2005
Copyright © 1999-2003 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors.
This website has been archived and is no longer maintained.