Конфигурирование частного репозитория

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

Доступ в репозиторий через SSH

Обычно, простейшее решение это использовать Git через SSH. Если пользователи уже имеют ssh аккаунт на машине, вы можете разместить git репозиторий в таком месте куда они имеют доступ. Таким образом они могут легко получить доступ к нему через ssh логин. Например, скажем у вас есть репозиторий которым вы хотите управлять. Вы можете экспортировать его как простой репозиторий и затем безопасно скопировать(используя scp) его на ваш сервер след.образом:

$ git clone --bare /home/user/myrepo/.git /tmp/myrepo.git
$ scp -r /tmp/myrepo.git myserver.com:/opt/git/myrepo.git

Затем кто-нибудь еще имеющий аккаунт ssh на myserver.com может склонировать репозиторий выполнив:

$ git clone myserver.com:/opt/git/myrepo.git

Что просто пригласит их ввести ssh пароль или использовать их публичный ключ, мы исходим из того что ssh у этих пользователей сконфигурирован.

Множественный доступ пользователей с помощью Gitosis

Если вы не хотите настраивать отдельные аккаунты для каждого пользователя, вы можете использовать инструмент Gitosis. В gitosis, существует файл authorized_keys который содержит публичные ключи всех авторизированных на доступ к репозиторию пользователей, и потом все они используют пользователя 'git' чтобы выполнять push и pull.

Установка и Конфигурация Gitosis



github logo