install doc: server and client requirements spelled out
This commit is contained in:
parent
05a06a2c75
commit
c727d68caa
|
@ -19,6 +19,7 @@ In this document:
|
||||||
* upgrades
|
* upgrades
|
||||||
* other notes
|
* other notes
|
||||||
* next steps
|
* next steps
|
||||||
|
* appendix: server and client requirements
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
@ -105,3 +106,72 @@ opposed to merely creating one which did not exist) is best left to a human.
|
||||||
The last message produced by the easy install script should tell you how to
|
The last message produced by the easy install script should tell you how to
|
||||||
add users, repos, etc., and you will find more details in the [admin][admin]
|
add users, repos, etc., and you will find more details in the [admin][admin]
|
||||||
document.
|
document.
|
||||||
|
|
||||||
|
<a name="server_reqs"></a>
|
||||||
|
|
||||||
|
### appendix: server and client requirements
|
||||||
|
|
||||||
|
There are 3 machines *potentially* involved in installing and administering
|
||||||
|
gitolite.
|
||||||
|
|
||||||
|
#### server
|
||||||
|
|
||||||
|
This is where gitolite is eventually installed. You need a *normal* userid
|
||||||
|
(typically "git" but can be anything) on this machine; root access is *not*
|
||||||
|
needed.
|
||||||
|
|
||||||
|
You need the following software on it:
|
||||||
|
|
||||||
|
* git
|
||||||
|
* can be in a non-PATH location if you are unable to install it
|
||||||
|
normally; see the `$GIT_PATH` variable in the "rc" file
|
||||||
|
* perl
|
||||||
|
* default install is fine; no special modules are needed
|
||||||
|
* (a normal install of git also requires/installs perl, so you probably
|
||||||
|
have it already)
|
||||||
|
* openssh server
|
||||||
|
* (I guess any ssh server that can understand the `authorized_keys` file
|
||||||
|
format should work)
|
||||||
|
* **bash shell**
|
||||||
|
* a small part of the gitolite server side is written in "bash"; I
|
||||||
|
intend to test it (time permitting) on non-bash (like ksh or plain sh)
|
||||||
|
on non-Linux servers. Once that is done, this bash dependency will go
|
||||||
|
away.
|
||||||
|
|
||||||
|
#### install workstation
|
||||||
|
|
||||||
|
Installing or upgrading the gitolite software itself is best done by running
|
||||||
|
the easy-install program from a clone, usually on a different machine.
|
||||||
|
|
||||||
|
This script is heavily dependent on bash, so you need a unix machine that has
|
||||||
|
a bash shell available. Unlike the server side dependency mentioned above,
|
||||||
|
this bash dependency is probably permament.
|
||||||
|
|
||||||
|
*However*, you do not need to use this machine every day. Day to day
|
||||||
|
administration of gitolite (adding users, repos, etc) can be done from
|
||||||
|
anywhere; see next section.
|
||||||
|
|
||||||
|
If you do not have such a machine, you have the following alternatives:
|
||||||
|
|
||||||
|
* use a different userid on the same server
|
||||||
|
* use the same userid on the same server!
|
||||||
|
* (either of the above cases makes bash mandatory on the server, by the way)
|
||||||
|
* manually simulate the script directly on the server; doable, but tedious
|
||||||
|
|
||||||
|
#### admin workstation(s)
|
||||||
|
|
||||||
|
When you install gitolite, it creates a repository called "gitolite-admin" and
|
||||||
|
gives you permissions on it.
|
||||||
|
|
||||||
|
Administering gitolite (adding repos/users, assigning permissions, etc) is
|
||||||
|
done by cloning this repo, making changes to a file called
|
||||||
|
`conf/gitolite.conf`, adding users' pubkeys to `keydir/`, and pushing the
|
||||||
|
changes back to the server.
|
||||||
|
|
||||||
|
Which means all this can be done from *any* machine, even Windows. [Just make
|
||||||
|
sure your pubkey (from the Windows machine) has been added and permissions
|
||||||
|
given to allow you to push to the gitolite-admin repo. This is also how other
|
||||||
|
people can be added as "admins": add their pubkey to as
|
||||||
|
`keydir/<username>.pub`, and give `<username>` at least `RW` permissions on
|
||||||
|
the `gitolite-admin` repo in the `conf/gitolite.conf` file.]
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue