Manage Tool for gitosis

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 11

Watchers: 1

Forks: 1

Open Issues: 0

Language: CSS

1.0.0 2013-09-15 15:49 UTC


Manage gitosis over CLI- and Web-Interface.

https://secure.travis-ci.org/cmuench/n98-gitosis-admin.png https://www.versioneye.com/user/projects/514c647f9ee00e0002007ec9/badge.png https://poser.pugx.org/n98/gitosis-admin/v/stable.png


Download the composer.phar executable or use the installer.

$ curl -s http://getcomposer.org/installer | php

Install dependencies over composer.

$ php ./composer.phar install

Create config.yaml file from config.yaml.dist file.

Add path to your gitosis config (Cloned gitosis-admin repository):

locale: en
    enabled: false

  root_directory: /path/to/gitosis-admin
  ssh_user: git
  ssh_host: myhost

CLI Interface

List Repositories
$ bin/n98-gitosis-admin repo:list
Add Repository
$ bin/n98-gitosis-admin repo:add name [owner] [description] [gitweb] [daemon]


$ bin/n98-gitosis-admin repo:add my-repo "John Doe" "My awesome git repository" no no
Remove Repository
$ bin/n98-gitosis-admin repo:remove name
List Groups
$ bin/n98-gitosis-admin group:list
Add Group
$ bin/n98-gitosis-admin group:add name members [writable] [readonly]


# Adds the repo "foo" with members "bar, zoz and bla" with write access to "repo1" and read access to "repo2"
$ bin/n98-gitosis-admin group:add foo bar,zoz,bla repo1 repo2
Remove Group
$ bin/n98-gitosis-admin group:remove name
Add User to existing Group
$  bin/n98-gitosis-admin group:user:add group username
Remove User from existing Group
$  bin/n98-gitosis-admin group:user:remove group username
Remove a user from all groups
$ bin/n98-gitosis-admin user:remove username
List all existing users

Lists all users across all groups.

$  bin/n98-gitosis-admin user:list
Allow group write acccess to repository
$ bin/n98-gitosis-admin group:repo:add:writable
Allow group readonly acccess to repository
$ bin/n98-gitosis-admin group:repo:add:readonly

Web Interface

  • Manage Repositories, Groups and Users

See Screenshots of the web interface on my flickr account:




  • Clone gitosis-admin repository on your local machine.
  • Make sure that webserver user has a valid ssh key which is assigned to gitosis-admin repository.

On Debian Systems with Apache User:

$ mkdir /var/www/.ssh
$ chown -R www-data:nobody /var/www/.ssh
$ sudo -u www-data ssh-keygen -t rsa


  • At least PHP 5.3
  • Composer
  • GIT Client


  • Auth Layer with LDAP support
  • More Translations