The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Создание хостинга для git репозитория в Debian Linux
Как оказалось, в современном debian создать хостинг для git репозитория, не
просто просто, а очень просто.

Начнем мы ставить, на сервере, софт. Понадобиться нам gitosis и git-core.
Говорим волшебное заклинание:

   sudo aptitude install gitosis git-core

Следующим шагом надо создать gitosis хостинг:

   sudo -H -u git gitosis-init < .ssh/authorized_keys2

Да, авторизация будет происходить только по ключам.

Дальше, надо разрешить выполнение post-update хука:

   sudo chmod 755 /srv/gitosis/repositories/gitosis-admin.git/hooks/post-update

Теперь нам нужен git-daemon, который бы раздавал все что мы делаем
(этот шаг нужен, если мы хотим разрешить всем read only доступ):

   sudo update-inetd --group OTHER --add 'git\tstream\ttcp\tgitosis\tgitosis\t/usr/bin/git\tgit daemon \
     --inetd --export-all  --base-path=/srv/gitosis/repositories/'

Все, на этом настройка сервера закончена. Теперь начинаем настраивать, собственно, хостинг. 
Прелесть этой системы в том что все управление делается через git :).

Давайте, для начала, возьмем себе административный репозиторий:

   git clone gitosis@SERVER:gitosis-admin.gi

Мы получим репозиторий, в котором будет лежать директория keydir. В ней лежат
публичные ключи людей,
которые имеют доступ к нашему хостингу. В качестве имени файла используется его
имя из открытого ключа.
Т.е. что бы добавить человека нужно, просто, добавить его ключ.

Для примера, мы создадим группу developer и testers, группа developers будет иметь доступ 
к двум проектам на запись (project1-dev и project2-dev) и к проекту группы
testers на чтение. Группы testers наоборот.

   [group quux]
   members = joe smith
   writable = projeect1-dev project2-dev
   readonly = testers


   [group quux]
   members = max john
   writable = testers
   readonly = projeect1-dev project2-dev

Теперь осталось только сделать commit.

Если сделать доступ, через git-daemon, то любой, сможет прочитать эти проекты.
 
16.02.2009 , Автор: Kirill A. Korinskiy , Источник: http://catap.ru/blog/2009/02/12/git...
Ключи: cvs, git
Раздел:    Корень / Программисту и web-разработчику / Системы контроля версий и управления исходными текстами

Обсуждение [ RSS ]
  • 1, prapor (??), 15:24, 16/02/2009 [ответить]  
  • +/
    Эх, попалась бы она мне год назад....
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру