Git and CMUCL
Git
The CMUCL CVS repository was converted to git on 2011-09-20 and is now available. You can browse the repository using the Browse Source link above, or you can visit CMUCL gitweb for a different view. This latter page also includes links necessary for cloning the repository. (For committers, be sure to put your userid in the ssh link.)
In short, to get a copy do
git clone git://common-lisp.net/projects/cmucl/cmucl.git
or, if the git method does not work, use the http transport
git clone http://common-lisp.net/r/projects/cmucl/cmucl.git
Developers should use
git clone ssh://user@common-lisp.net/var/git/projects/cmucl/cmucl.git
where user
should be replaced with your common-lisp user name.
The CVS repository will still be available, but will not allow checkins anymore.
Mirrors
There is also a git mirror at Github. It may be slightly out-of-date compared to the official repository, but the intent is that it should never be more than a few days behind, and hopefully no more than a few hours.
Tips
CVS
The directory structure for CMUCL was changed on 2011/11/04 in
changeset [a9961276fedcff5f7e94a07d334546c819dd420a]. This makes
git log
not produce the history of the changes before that date.
However, you can still get the previous history using
git log --follow
.
Git
To keep the master branch in a cleaner state without merge commits littering the history, we suggest using one of the following:
git pull --rebase
- Edit
.git/config
so that it contains something like[branch "master"] remote = origin merge = refs/heads/master rebase = true
- Add the following to
~/.gitconfig
[branch] autosetuprebase = true
You can read more about it at http://viget.com/extend/only-you-can-prevent-git-merge-commits, http://mislav.uniqpath.com/2013/02/merge-vs-rebase/, http://stackoverflow.com/questions/8509396/git-pull-results-in-extraneous-merge-branch-messages-in-commit-log.