Informatik now has a CVS server. This is potentially useful for Informatikers who want to
The CVS server has been set up for the UniForM project on an old machine which nobody wants. But hopefully other Informatikers will find it useful. At the moment this server is still experimental and is running on an old machine without much disk space, so do not be surprised if some details change.
If you have further questions, please call me at
0421 218 64228
or e-mail me.
Everyone on the Internet has read access, by default, to the contents of the CVS server. However project leaders (see the Projects section) can ask for a project to be made unreadable to anyone without write access to that project.
To use this on a Unix system, first set the environment
variable CVSROOT to
:pserver:cvsread@cvs-agbkb.informatik.uni-bremen.de:/repository
For example, if your shell is sh or bash you can
do this with
CVSROOT=:pserver:cvsread@cvs-agbkb.informatik.uni-bremen.de:/repository export CVSROOT
and if your shell is csh, you can instead use
setenv CVSROOT :pserver:cvsread@cvs-agbkb.informatik.uni-bremen.de:/repository
Once the CVSROOT environment variable is set, type
cvs login
You should be prompted for a password; type "cvsread".
Assuming everything works, you can now download things from the
repository. For example, you can download uni with the
command
cvs checkout -P uni
and update your copy by (in the same directory) typing
cvs update -Pd uni
There are many other CVS commands. CVS is documented on its info page; try typing
info cvs
for more details.
If you want write access, you need to apply to me, Mattias Werner. The CVS server was originally intended for the UniForM project; however I hope it will be useful to other people in the Informatik Department at Bremen. But first read the rest of this HTML page!!!
The files on the CVS server are divided into projects. When you obtain write access it will be for a particular project. It is possible to have write access to more than one project, but only by having more than one account.
Each project has a project leader. You will need permission from the project leader to get write access to that project.
It is no problem starting a new project. Let me know if you want to do this. Also tell me if you want
You should not trust the CVS server not to lose or corrupt your data. There are two reasons for this.
Firstly, CVS is not guaranteed to be secure. Indeed all passwords and data are (currently) transmitted in the clear, and for all I know someone will discover a buffer-overflow exploit tomorrow which one of our brighter students will use to completely crash the system. For this reason, please do not trust the CVS server too much. It would for example be dangerous to trust code downloaded from the CVS server without some form of checking, since a hacker who hacked the server would then be able to hack you.
Secondly, the CVS server itself is running on an ancient computer with an ancient hard disk. We have already had one major disk crash on this machine. Fortunately there is a script which runs every night which backs up the repository, and this script worked when we did have a major crash. But please don't bet everything on it.
Before I can give you write access to the CVS server, I will need
you to generate an encrypted password, in the standard Unix format.
To do this, you can use the program htpasswd (or sometimes called htpasswd2) or download this C program, compile
it, and run it. (You may need, for example,
-lcrypt on the command line
to get it to link, but try it first without.) The program only checks
that the password
has a reasonable number of characters and is not all ASCII letters.
So of course you are expected to make sure it is not a name, date,
dictionary word, or otherwise guessable.
Similarly you should take reasonable care to prevent other people seeing your password, just as for your password on Informatik's systems. Be aware that CVS will probably (on Unix anyway) store your password in your home directory in a .cvspass file. This is alright, but you should be careful that other people don't see this file. (CVS should set it up so that only you and the system administrators can read it.)
There is no way you can change your own CVS password by yourself. Whenever you want to change it or disable your account, please let me know (with the new encrypted password, if possible) and I'll do it immediately. (To change the password rather than disable it, I will of course need some kind of identification; if you can please come and see me.) In particular, you should of course do this if you are worried that someone else knows your password.
CVS is not really suitable for binary files, and in any
case binary files can get quite large, so I'm not terribly
in favour of them. But if you must add binary files to the
repository, please use the -kb option to
the CVS add command when you add them. This will
make CVS cope slightly better with them; in particular your
files will not be corrupted when downloaded to Windows systems!
(CVS tries to be clever with end-of-line characters for
files that aren't binary.)