Сховище GIT через локальну мережу


14

Я намагаюся налаштувати сховище GIT через локальну мережу в ОС Ubuntu .
Я можу налаштувати GIT-сховище, але не впевнений, ЯК ВИДАЛИТИ сховище іншим користувачам у локальній мережі .
Оскільки для цього потрібен сервер, я встановив OpenSSH-Server . Але не знаю, як це налаштувати.

Будь ласка, вкажіть мені, щоб виправити ресурс для читання.
Спасибі.

git 

Відповіді:


17

Перш за все, вам потрібно перевірити налаштування opensh на сервері 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файл і додайте 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

Примітка. Якщо у вас виникають проблеми з eagain.net, ви можете використовувати Github.
Казарк

3

Ваш найкращий спосіб зробити це - запустити 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операції під час входу на сервер, а не надавати користувачеві повну програму.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.