This page is intended for active developers of CMUCL, those who will modify wthe working sources.
Our public resources (they include delay-free access to the current working sources of CMUCL) are listed at http://www.cons.org/cmucl/.
cvs2.cons.org
.
The CVS tree for CMUCL is
cvs2.cons.org:/home/CVS-cmucl
You can use the ftp space on this machine to put up
project-related files. Directory /a/ftp/lisp
is writeable
by the whole group and reflects to
http://www2.cons.org:8000/ftp-area. It is mirrored (daily or
so) to ftp://ftp2.cons.org/pub/languages/lisp/cmucl/.
http://www2.cons.org:8000/CVS-cmucl/ access the CVS repository directly (individual files).
http://www2.cons.org:8000/ftp-area/cmucl/ is our ftp stuff, accessed without mirror delay.
http://www2.cons.org:8000/ftp-area/cmucl/cmucl-cvs-<date>.tar.gz is a tarfile of the contents of the CVS tree (daily).
http://www2.cons.org:8000/ftp-area/cmucl/cmucl-src-<date>.tar.gz is a tarfile of outchecked sources files from the CVS tree (daily).
http://www2.cons.org:8000/ftp-area/cmucl/src/ are the outchecked sources from the CVS tree, as individual files.
http://www2.cons.org:8000/cgi-bin/cvsweb-cmucl.cgi is an interacting browsing tools for CVS files. You can step trough the source tree interactivly and see histories and diffs between versions.
Thanks to Jordan Hubbard of the FreeBSD project and Walnut Creek CDROM we have machine to use for our central CVS repository.
The CVS tree for CMUCL is located at
cvs2.cons.org:/home/CVS-cmucland the main source tree is
cvs2.cons.org:/home/CVS-cmucl/src
There are several alternatives to use it. Basically, you need an account on this machine and then check out files by setting the environment variable $CVSROOT to "cvs2.cons.org:/home/CVS-cmucl" when using from remote or to "/home/CVS-cmucl" for local checkout. Then, do a "cvs checkout src".
There are a number of alternatives to work with the tree, here are some:
We are guests on this machine and several security restrictions apply. If you can, avoid using login protocols that transfer clear text passwords. Using ssh instead is the best choice.
Normally, remote CVS uses a protocol that is based on top of rsh and .rhosts. This isn't available here. I'm sorry to add some work here, but to use remote CVS, it is best to get ssh in addition to CVS. Set the environment variable CVS_RSH to "ssh".
There is also a standalone CVS server mode (which transfers clear text passwords) and Kerberos authentication (I'm unsure about possible usage on this machine). I hope we can agree of ssh for "real" remote CVS checkout. Transferring plains files to your machines is another issue, let me know what you need.
If you're used to RCS and not to CVS, be warned that CVS does no locking. It tries to merge concurrent changes and is usually quite successful in doing so. But it is a good idea to "cvs update" your checked-out sources regularly. It tells about the files that someone else changed and are updated in your copy.
But, be carefule with "cvs update" when you transferred the outchecked files to your home machine manually. CVS remembers which version number your outchecked source has. An example:
In a word, do a "cvs update" only when you can update all the files you're really working on. "cvs update" tells you which files were changed by someone else.
If you can't have a ssh connection
When you do a checkout to get plain files to work with, CVS remembers where the CVS repository was. If this is your local one, changed things will be commit to your local tree and won't end up in the central one.
You'll either have to transfer your changed files manually to a checkout-out tree that was checked out from the central CVS tree (i.e. in your homedir on the cvs machine).
Another situation is when you have an IP connection to the central repository that is capable of remote CVS, but you maintain a local copy for speed.
You can change the files where CVS remembers what repository it got things from. This is a file "CVS/repository" in every subdirctory of your checked-out files. jordans-hacks-for-remote-cvs.txt is a message of Jordan Hubbard how he commits to a local and the central repository at once. Note while people talked about CVSup in this message, this way doesn't have anything to do with CVSup.
Some of you might want to keep a copy of the whole CVS repository at home also. If you do so, please drop me a note.