b8af25aba0
Gitolite is an SSH-based gatekeeper providing access control for a server that hosts many git repositories. Without gitolite, each developer needing to push to one of the repositories hosted would need a user account on that server; gitolite lets you do that just using SSH public keys tied to a single, common, user that hosts all the repositories. Gitolite can restrict who can read (clone/fetch) from or write (push) to a repository, and who can push to what branch or tag - an important issue in corporate environments. Other features include: * access control by branch-name or by modified file/directory; * per-developer "personal namespace" prefixes; * simple but powerful configuration file syntax (with validation); * config files (and authority for maintaining them) can be split; * easy integration with gitweb; * comprehensive logging; * easy migration from gitosis.
39 lines
967 B
Text
39 lines
967 B
Text
===========================================================================
|
|
$NetBSD: MESSAGE,v 1.1.1.1 2011/11/20 19:11:49 ryoon Exp $
|
|
|
|
To use gitolite, you will need to perform the following steps.
|
|
|
|
1. Create a new user/group, for example, git/git.
|
|
|
|
On server,
|
|
# groupadd git
|
|
# useradd -m -g git git
|
|
|
|
2. login to new user git, create ssh public key, and copy public key
|
|
file to user git's home directory on server.
|
|
|
|
$ ssh-keygen -t rsa -f git-admin
|
|
$ cp git-admin.pub ~/.ssh/
|
|
$ scp ~/git-admin.pub gitserver:~/.ssh/
|
|
|
|
3. Setup gitolite.
|
|
|
|
On server,
|
|
$ gl-setup ~/git-admin.pub
|
|
|
|
And edit config file.
|
|
|
|
4. Setup ~/.ssh/config on client.
|
|
Add the following lines.
|
|
|
|
host gitserver
|
|
user git
|
|
hostname RealGitServerName
|
|
port 22
|
|
identityfile ~/.ssh/git-admin
|
|
|
|
5. For testing, please clone testing repository.
|
|
|
|
On client,
|
|
$ git clone ssh://gitserver/testing
|
|
===========================================================================
|