Repository GIT su LAN


14

Sto cercando di impostare un repository GIT su LAN nel sistema operativo Ubuntu .
Sono in grado di configurare un repository GIT, ma non sono sicuro di come esporre il repository ad altri utenti in LAN .
Poiché richiede un server, ho installato OpenSSH-Server . Ma non so come configurarlo.

Per favore, indicami la risorsa corretta da cui leggere.
Grazie.

git 

Risposte:


17

Prima di tutto, è necessario controllare la configurazione di openssh sul server Ubuntu: vedere questo HowTo .

Quindi puoi seguire questo articolo , che consiglia principalmente:

$ 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

vai nel tuo /etc/ssh/ssh_configfile e aggiungi git all'elenco degli Utenti consentiti che possono accedere.
copia il tuo id_rsa.pubfile sul tuo server da qualche parte (nel nostro esempio che stiamo usando /tmp) e quindi esegui questo comando:

 $ 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

Dal tuo computer locale, provalo con questo:

 git clone git@YOUR_SERVER:gitosis-admin.git

Configura gitosi per un nuovo progetto. Usa il tuo editor preferito per creare un nuovo blocco sotto quello della gitosi. Dovrebbe sembrare come questo:

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

Un paio di cose da tenere d'occhio nel blocco sopra.
In primo luogo, assicurati che il tuo nome corrisponda a ciò che è nella tua chiave pubblica (ovvero, apri il tuo file id_rsa.pub e vedi quello che dice il nome. In
secondo luogo, assicurati di scrivere correttamente scrivibile!

Al termine, esegui il commit e invia le modifiche al server.

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

Nota: se si verificano problemi con eagain.net, è possibile utilizzare Github.
Kazark,

3

Il modo migliore per farlo sarebbe quello di eseguire un server SSH e limitare gli utenti a utilizzare git-shellper la loro shell di accesso. È possibile installare correttamente un server SSH eseguendo uno dei seguenti comandi se non è già stato installato.

sudo apt-get install openssh-server

o

sudo apt-get install dropbear

Quindi aggiungere /usr/bin/git-shella /etc/shellsfacendo

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

Quindi utilizzare git-shellinvece invece bashcome shell utente. Ciò limiterà l'utente alla possibilità di eseguire gitoperazioni solo quando si accede al server invece di fornire all'utente un completo ..

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.