2009-08-27 11:54:23 +02:00
|
|
|
# administering and running gitolite
|
|
|
|
|
2009-08-29 07:21:48 +02:00
|
|
|
Note: some of the paths in this document use variable names. Just refer to
|
|
|
|
`~/.gitolite.rc` for the correct values, assuming you followed the
|
|
|
|
instructions in the "INSTALL" document.
|
|
|
|
|
2009-08-27 11:54:23 +02:00
|
|
|
### administer
|
|
|
|
|
|
|
|
* ask each user who will get access to send you a public key. See other
|
|
|
|
sources (for example
|
2009-08-29 07:21:48 +02:00
|
|
|
[here](http://sitaramc.github.com/0-installing/2-access-gitolite.html#generating_a_public_key))
|
2009-08-27 11:54:23 +02:00
|
|
|
for how to do this
|
2009-08-29 07:21:48 +02:00
|
|
|
* rename each public key according to the user's name, with a `.pub`
|
|
|
|
extension, like `sitaram.pub` or `john-smith.pub`. You can also use
|
|
|
|
periods and underscores
|
|
|
|
* copy all these `*.pub` files to `$GL_KEYDIR`
|
|
|
|
* edit the config file (`$GL_CONF`) and give the new users permissions as
|
|
|
|
required. The users names should be exactly the same as their keyfile
|
|
|
|
names, but without the `.pub` extension
|
2009-08-27 11:54:23 +02:00
|
|
|
* backup your `~/.ssh/authorized_keys` file if you feel nervous :-)
|
|
|
|
* cd to `$GL_ADMINDIR` and run `src/gl-compile-conf`
|
|
|
|
|
|
|
|
That should be it, really. However, if you want to be doubly sure, or maybe
|
|
|
|
the first couple of times you use it, you may want to check these:
|
|
|
|
|
|
|
|
* check the outputs
|
2009-08-29 07:21:48 +02:00
|
|
|
|
2009-08-27 11:54:23 +02:00
|
|
|
* `~/.ssh/authorized_keys` should contain one line for each "user" pub
|
|
|
|
key added, between two "marker" lines (which you should please please
|
|
|
|
not remove!). The line should contain a "command=" pointing to a
|
|
|
|
`$GL_ADMINDIR/src/gl-auth-command` file, then some sshd restrictions, the
|
|
|
|
key, etc.
|
|
|
|
* `$GL_CONF_COMPILED` (default
|
|
|
|
`~/.gitolite/conf/gitolite.conf-compiled.pm`) should contain an
|
|
|
|
expanded list of the access control rules. It may look a little long,
|
|
|
|
but it's fairly intuitive!
|
|
|
|
|
|
|
|
* if the run threw up any "initialising empty repo" messages, check the
|
|
|
|
individual repos (inside `$REPO_BASE`) if you wish. Especially make sure
|
|
|
|
the `$REPO_BASE/[reponame].git/hooks/update` got copied OK and is
|
|
|
|
executable
|