testing gitolite
WARNING: this will clobber these files and
directories in your $HOME
. Ideally, you should use a throwaway
userid.
Running gitolite's test suite is really just a superset of trying it out safely.
To run the full test suite, create a throw-away userid, log in to it, then run these commands:
git config --global include.path ~/.gitconfig.local
git clone https://github.com/sitaramc/gitolite
cd gitolite
prove
You will get an error that forces you to read t/README
and set an env var
before the test can proceed. This is intentional; I've had people who don't
pay attention to the "data loss" warning, and then complain that it was not
prominent enough. Forcing them to read a much smaller page appears to focus
their attention better!
The test suite should run fine on most recent Linuxes and Unixes. Although gitolite itself should work fine with any git after 1.6.6 or so, the test suite generally requires a more recent git.
Make sure:
$HOME/bin
is in$PATH
- sshd allows incoming ssh to this userid, at least from localhost
Gitolite's test suite is mostly written using tsh -- the "testing shell". Take a look at some of the scripts and you will see what it looks like. It has a few quirks and nuances, but it's fine for what I need here.
The tests also use a somewhat convoluted system of environment variables in order to run entirely as a local user, without going through ssh at all. This lets a complete test suite run in about a lot less time than it would otherwise take.
If you think that defeats the purpose of the testing, you haven't read this yet.
appendix 1 -- the clobber list
When you try out gitolite or run the test suite, the following files and directories in your \$HOME are potentially clobbered.
.gitconfig
.gitolite/
.gitolite.rc
projects.list
repositories/
.ssh/