Kilka miesięcy temu opisałem jak pracować ze zdalnym repozytorium Git. Został tam opisany najprostrzy sposób jak swój projekt umieścić na serwerze.
Jednak gdy chcemy ten projekt współdzielić z innymi programistami możemy napotkać kilka problemów.
Chciałbym jako uzupełnienie tamtego artykułu napisać krok po kroku jak skonfigurować zdalne repozytorium tak aby kilku programistów mogło się z nim łączyć przez ssh.

Czynności, które musimy wykonać po stronie serwera:

  • Wybieramy miejsce na repozytorium, np. „/opt/repos/git” i przechodzimy do niego.

  • Tworzymy grupę systemową git i dodajemy do niej użytkowników, którzy mają dostęp do repozytorium

  • Zmieniamy uprawnienia plików w ten sposób, aby członkowie tej grupy mieli prawo zapisu we wszystkich podfolderach tego katalogu. Zablokować zapis dla innych.

  • Teraz jeżeli chcemy stworzyć nowe repozytorium, to tworzymy nowy katalog:

  • Następnie inicjujemy współdzielone repozytorium:

To wszystko, jak współdziałać z takim repozytorium zostało opisane w tym artykule

Jeżeli chcemy aby użytkownik, który został dodany do systemu, miał możliwość tylko korzystania z repozytorium – chcielibyśmy wyłączyć mu standardowe logowanie to musimy zmienić mu w ustawieniach powłokę z /bin/login,na /usr/bin/git-shell . Taka powłoka pozwoli łączyć się tylko i wyłącznie z repozytorium gita. Próbla zalogowania się do systemu spowoduje wyświetlenie komunikatu:

:)
Udanego gitowania.
.