Difference between revisions of "Gitolite"

From ArchWiki
Jump to: navigation, search
(Configuration)
(Configuration)
Line 12: Line 12:
 
  # su - git
 
  # su - git
 
  $ gitolite setup -pk id_rsa.pub
 
  $ gitolite setup -pk id_rsa.pub
 +
 +
Modify your work-machine's ~/.ssh/config:
 +
Host server
 +
HostName Server's-IP-address (eg 192.168.12.2)
 +
User git
 +
### IdentityFile specifies the private ssh-key
 +
IdentityFile ~/.ssh/id_rsa
 +
  
 
Do NOT add repos or users directly on the server! You MUST manage the server by cloning the special 'gitolite-admin' repo on your workstation:
 
Do NOT add repos or users directly on the server! You MUST manage the server by cloning the special 'gitolite-admin' repo on your workstation:
  $ git clone git@server:gitolite-admin
+
  $ git clone server:gitolite-admin
  
 
== Add users ==
 
== Add users ==

Revision as of 07:48, 19 July 2012

Gitolite allows you to host Git repositories easily and securely.

Installation

gitolite-gitAUR is available in the Arch User Repository.

It is also available on github, where you can find the last update.

Configuration

Add a user

# useradd -m -U -r -s /bin/bash -d /srv/git git
# su - git
$ gitolite setup -pk id_rsa.pub

Modify your work-machine's ~/.ssh/config:

Host server
HostName Server's-IP-address (eg 192.168.12.2)
User git
### IdentityFile specifies the private ssh-key
IdentityFile ~/.ssh/id_rsa


Do NOT add repos or users directly on the server! You MUST manage the server by cloning the special 'gitolite-admin' repo on your workstation:

$ git clone server:gitolite-admin

Add users

Ask each user who will get access to send you a public key. On their workstation generate the pair of ssh keys:

$ ssh-keygen

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. Have the users send you the keys.

Copy all these *.pub files to keydir in your gitolite-admin repo clone. You can also organise them into various subdirectories of keydir if you wish, since the entire tree is searched.

Edit the config file (conf/gitolite.conf in your admin repo clone). See the gitolite.conf documentation (http://sitaramc.github.com/gitolite/conf.html) for details on what goes in that file, syntax, etc. Just add new repos as needed, and add new users and give them permissions as required. The users names should be exactly the same as their keyfile names, but without the .pub extension

$ nano conf/gitolite.conf

Commit and push the changes them:

git commit -a
git push

See also

http://sitaramc.github.com/gitolite/index.html