Работа c gitoisis

2012-08-27
Gitosis используется для управления пользовательскими правами доступа к репозиторию. Что интересено, пользовательский интрефейс для администрирования настроек предаставляет собой не web-интерфейс, а специальный git-репозиторий. После того, как вы добавили пользователя и установили ему права доступа, командой push вы сохраняете новые настройки на доступ в репозитории gitosis'a.
Генерация SSH ключа

Многие git серверы идентифицируют пользователей, используя ssh ключ. По умполчанию ключ пользовтеля хранится в скрытой папке ~/.ssh. Проверить имеется ли уже ключ можно простым выводом списка файлов в этой директории:

$ ls ~/.ssh id_rsa id_rsa.pub

Вы видите пару файлов с одинаковым именем, один из которых имеет расширение .pub (имена файлов могут быть id_rsa или id_dsa). Файл с расширением .pub - это открытый ключ, а второй файл с таким же именем, но без расширения - это закрытый ключ. Если эти файлы отсутсвуют, их можно создать командой ssh-keygen. После того как ключи созданы, открытый ключ должен быть передан админимтратору git-сервера.
Установка gitosis
Поскольку gitosis написан на Python, не обходимо сначала установить некоторые python утилиты.

$ apt-get install python-setuptools

После чего склонировать gitosis из какого-либо репозиторя, например, на github'e, и установить его
$ git clone https://github.com/res0nat0r/gitosis.git
$ cd gistosis
$ python setup.py install