2009-08-27 11:54:23 +02:00
|
|
|
# installing gitolite
|
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
This document tells you how to install gitolite. After the install is done,
|
|
|
|
you may want to see the "admin" document for adding users, repos, etc.
|
|
|
|
|
|
|
|
There's an easy install script for Linux, and for other Unixes there's a
|
|
|
|
slightly more manual process. Both are explained here.
|
|
|
|
|
|
|
|
In this document:
|
|
|
|
|
|
|
|
* easy install
|
2009-10-25 14:53:15 +01:00
|
|
|
* typical example run
|
|
|
|
* advantages over the older install methods
|
|
|
|
* disadvantages
|
2009-10-11 05:01:59 +02:00
|
|
|
* manual install
|
|
|
|
* other notes
|
|
|
|
* next steps
|
|
|
|
|
|
|
|
----
|
|
|
|
|
2009-10-10 09:08:22 +02:00
|
|
|
### easy install
|
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
There is an easy install script that makes installing very easy for the common
|
|
|
|
case. **This script is meant to be run on your workstation, not on the
|
2009-10-10 09:08:22 +02:00
|
|
|
server!** It will take care of all the server side work, *and* get you
|
|
|
|
"push-to-admin" too :-) In short, it does **everything**!
|
|
|
|
|
|
|
|
Assumptions:
|
|
|
|
|
|
|
|
* you have a server to host gitolite
|
|
|
|
* git is installed on that server (and so is perl)
|
|
|
|
* you have a userid on that server
|
|
|
|
* you have ssh-pubkey (password-less) login to that userid
|
|
|
|
* (if you have only password access, run `ssh-keygen -t rsa` to create a
|
|
|
|
new keypair if needed, then run `ssh-copy-id user@host`)
|
|
|
|
* you have a clone or an archive of gitolite somewhere on your workstation
|
|
|
|
|
|
|
|
If so, just `cd` to that clone and run `src/00-easy-install.sh` and follow the
|
|
|
|
prompts! (Running it without any arguments shows you usage plus other useful
|
|
|
|
info).
|
|
|
|
|
2009-10-25 14:53:15 +01:00
|
|
|
#### typical example run
|
|
|
|
|
|
|
|
A typical run for me is:
|
|
|
|
|
|
|
|
src/00-easy-install.sh -q git my.git.server sitaram
|
|
|
|
|
|
|
|
`-q` stands for "quiet" mode -- very minimal output, no verbose descriptions
|
|
|
|
of what it is going to do, and no pauses unless absolutely needed. However,
|
|
|
|
if you're doing this for the first time or you appreciate knowing what it is
|
|
|
|
actually doing, I suggest you skip the `-q`.
|
|
|
|
|
2009-10-10 09:08:22 +02:00
|
|
|
#### advantages over the older install methods
|
|
|
|
|
|
|
|
* all ssh problems reduced to **just one pre-requisite**: enable ssh pubkey
|
|
|
|
(password-less) access to the server from your workstation first
|
|
|
|
* the script takes care of all the server side work
|
|
|
|
* when done:
|
|
|
|
* you get two different pubkeys (the original one for command line
|
|
|
|
access as before, plus a new one, created by the script, for gitolite
|
|
|
|
access)
|
|
|
|
* you can admin gitolite by commit+push a "gitolite-admin" repo, just
|
|
|
|
like gitosis (i.e., full "push to admin" power!)
|
|
|
|
|
|
|
|
#### disadvantages
|
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
* has been tested only with Linux
|
2009-10-10 09:08:22 +02:00
|
|
|
|
|
|
|
### manual install
|
|
|
|
|
|
|
|
If for some reason you cannot use the easy-install method, (for example,
|
2009-10-11 05:01:59 +02:00
|
|
|
you're on a non-Linux machine), it's not very complicated. Just open the file
|
|
|
|
`src/00-easy-install.sh` in a nice, syntax coloring, text editor, and follow
|
|
|
|
the instructions marked "MANUAL" :-)
|
2009-08-27 11:54:23 +02:00
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
### other notes
|
2009-08-30 08:38:54 +02:00
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
* If you edit `~/.gitolite.rc` and change any paths, be sure to keep the
|
|
|
|
perl syntax -- you *don't* have to know perl to do so, it's fairly easy to
|
|
|
|
guess in this limited case
|
2009-08-27 11:54:23 +02:00
|
|
|
|
2009-08-30 08:38:54 +02:00
|
|
|
* the config file is (by default) at `~/.gitolite/conf/gitolite.conf`,
|
|
|
|
though you can change its location in the "rc" file. Edit the file as you
|
2009-10-11 05:01:59 +02:00
|
|
|
wish. The comments in the example file (`conf/example.conf`) ought to be
|
|
|
|
clear enough but let me know if not
|
2009-08-27 11:54:23 +02:00
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
### next steps
|
2009-08-27 11:54:23 +02:00
|
|
|
|
2009-10-11 05:01:59 +02:00
|
|
|
See the "admin" document for how to add users, etc.
|