Назад | Перейти на главную страницу

Репозиторий GIT по локальной сети

Я пытаюсь настроить Репозиторий GIT по локальной сети в Ubuntu ОПЕРАЦИОННЫЕ СИСТЕМЫ.
Я могу настроить репозиторий GIT, но не уверен КАК открыть репозиторий другим пользователям в локальной сети.
Поскольку для этого требуется сервер, я установил OpenSSH-сервер. Но не знаю КАК настроить его.

Пожалуйста, укажите мне правильный ресурс, с которого нужно читать.
Спасибо.

Прежде всего, вам нужно проверить настройку openssh на сервере Ubuntu: см. это HowTo.

Тогда вы можете следовать Эта статья, которые в основном рекомендуют:

$ sudo apt-get install python-setuptools
$ mkdir ~/src
$ cd ~/src
$ git clone git://eagain.net/gitosis.git
$ cd gitosis
$ sudo python setup.py install
$ sudo adduser \
  --system \
  --shell /bin/sh \
  --gecos 'git version control' \
  --group
  --disabled-password \
  --home /home/git \
  git

иди в свой /etc/ssh/ssh_config file и добавьте git в список разрешенных пользователей, которые могут войти в систему.
скопируйте ваш id_rsa.pub файл на ваш сервер где-нибудь (в нашем примере мы используем /tmp), а затем запустите эту команду:

 $ sudo -H -u git gitosis-init < /tmp/id_rsa.pub
     Initialized empty Git repository in ./
 $ sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

На своем локальном компьютере проверьте это следующим образом:

 git clone git@YOUR_SERVER:gitosis-admin.git

Настроить гитозис для нового проекта. Используйте свой любимый редактор, чтобы создать новый блок под блоком gitosis. Должно получиться так:

[group myrailsapp]
members = myNameAsInTheRsa.pub
writable = myNewApp

Несколько вещей, на которые следует обратить внимание в блоке выше.
Во-первых, убедитесь, что ваше имя совпадает с тем, что указано в вашем открытом ключе (то есть откройте файл id_rsa.pub и посмотрите, что написано в имени.
Во-вторых, убедитесь, что вы правильно пишете!

Как только вы закончите, зафиксируйте и отправьте изменения на сервер.

$ git commit -a -m "created a new repository!"
$ git push

Лучший способ сделать это - запустить ssh-сервер и ограничить использование пользователями git-shell для их оболочки входа в систему. Вы можете правильно установить ssh-сервер, выполнив одну из следующих команд, если он еще не установлен.

sudo apt-get install openssh-server

или

sudo apt-get install dropbear

Затем добавьте /usr/bin/git-shell к /etc/shells при выполнении

sudo echo $(which git-shell) >> /etc/shells

Затем используйте git-shell вместо того bash в качестве пользовательской оболочки. Это ограничит пользователя только возможностью выполнять git операций при входе на сервер вместо предоставления пользователю полной ..