LAN üzerinden GIT deposu


14

Ben kurulum için bir çalışıyorum LAN üzerinden GYTE depo içinde Ubuntu OS.
Bir GIT deposu oluşturabiliyorum, ancak deponun LAN'daki diğer kullanıcılara NASIL gösterileceği konusunda emin değilim . Bir sunucu gerektirdiğinden, OpenSSH-Server'ı kurdum . Ama bilmiyorum NASIL yapılandırın. Lütfen beni okumak için doğru kaynağa yönlendirin. Teşekkürler.



git 

Yanıtlar:


17

Her şeyden önce, Ubuntu sunucusundaki openssh kurulumunuzu kontrol etmeniz gerekir: bu HowTo'ya bakın .

Ardından , çoğunlukla aşağıdakileri öneren bu makaleyi takip edebilirsiniz :

$ 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_configdosyanıza gidin ve giriş yapabilen İzin Verilen Kullanıcılar listesine git ekleyin. dosyanızı bir yere sunucunuza
kopyalayın id_rsa.pub(örneğimizde kullanıyoruz /tmp) ve ardından şu komutu çalıştırın:

 $ 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

Yerel makinenizden şu şekilde test edin:

 git clone git@YOUR_SERVER:gitosis-admin.git

Yeni bir proje için gitozu yapılandırın. Gitoz bloğunun altında yeni bir blok oluşturmak için favori düzenleyicinizi kullanın. Şöyle görünmelidir:

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

Yukarıdaki blok dikkat edilmesi gereken birkaç şey.
İlk olarak, adınızın genel anahtarınızdakiyle eşleştiğinden emin olun (yani, id_rsa.pub dosyanızı açın ve adın ne dediğine bakın.
İkinci olarak, doğru yazılabilir yazdığınızdan emin olun!

İşlemi tamamladıktan sonra değişiklikleri sunucuya aktarın.

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

Not: ile ilgili sorun yaşıyorsanız eagain.netGithub'ı kullanabilirsiniz.
Kazark

3

Bunu yapmanın en iyi yolu, bir ssh sunucusu çalıştırmak ve kullanıcılarınızı git-shellgiriş kabukları için kullanmakla sınırlamak olacaktır . Henüz yüklenmemişse, ssh sunucusunu aşağıdaki komutlardan birini çalıştırarak düzgün bir şekilde yükleyebilirsiniz.

sudo apt-get install openssh-server

veya

sudo apt-get install dropbear

Ardından eklemek /usr/bin/git-shelliçin /etc/shellsyaparak

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

Sonra git-shellbunun yerine bashkullanıcı kabuğunuz olarak kullanın . Bu, kullanıcının yalnızca gitsunucuya giriş yapmak yerine sunucuya giriş yaparken işlemleri gerçekleştirmesini kısıtlar .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.