Skonfiguruj serwer GIT z SSH na Ubuntu

Skonfiguruj serwer GIT z SSH na Ubuntu
Jeśli masz niewielką liczbę członków zespołu pracujących nad niektórymi projektami, możesz skonfigurować serwer GIT za pośrednictwem SSH w biurze i bardzo łatwo pracować nad projektami. W takim przypadku nie musisz używać GitHub ani żadnych innych usług. Serwer GIT oparty na SSH jest naprawdę łatwy w konfiguracji i użyciu. W tym artykule pokażę, jak skonfigurować serwer GIT z SSH na Ubuntu i jak go używać. Więc zacznijmy.

Konfigurowanie serwera GIT:

W tej sekcji pokażę, jak skonfigurować serwer Ubuntu jako serwer GIT dostępny.
Najpierw zaktualizuj pamięć podręczną repozytorium pakietów Apt za pomocą następującego polecenia:

Aktualizacja $ sudo apt

Pamięć podręczna repozytorium pakietów Apt powinna zostać zaktualizowana.

Teraz zainstaluj serwer OpenSsh i git za pomocą następującego polecenia:

$ sudo apt install openSsh-server git

Teraz naciśnij Y a następnie naciśnij Aby potwierdzić instalację.

Serwer OpenSsh i GIT powinny być zainstalowane.

Teraz utwórz nowego użytkownika git Z następującym poleceniem:

$ sudo useradd-Create-home-Shell /bin /bash git

Wszystkie repozytoria git zostaną zapisane w katalogu domowym git użytkownik /dom/git.

Teraz zaloguj się jako git Użytkownik z następującym poleceniem:

$ sudo su - git

Teraz utwórz nowy katalog .ssh Z następującym poleceniem:

$ mkdir .ssh

Teraz pozwól tylko git użytkownik do odczytania, zapisu, uprawnień do katalogu .SSH/ następująco:

$ CHMOD 700 .SSH/

Jak widać, git Użytkownik ma tylko odczyt (r), zapis (w), wykonać (x) uprawnienia na .SSH/ informator.

$ ls -ld .SSH/

Teraz utwórz nowy pusty plik .ssh/autoryzowane_keys następująco:

$ Touch .ssh/autoryzowane_keys

Zezwalaj tylko na odczyt i zapisz do pliku z git Użytkownik w następujący sposób:

$ CHMOD 600 .ssh/autoryzowane_keys

Jak widać, tylko git Użytkownik przeczytał (r) i zapis (w) uprawnienia do pliku .ssh/autoryzowane_keys.

w .ssh/autoryzowane_keys Plik, musisz dodać klucz publiczny użytkowników, których chcesz uzyskać dostęp do repozytoriów GIT na serwerze GIT.

Dodanie klucza publicznego klienta do serwera GIT:

Aby uzyskać dostęp do repozytoriów GIT na serwerze GIT, klient musi dodać swój klucz publiczny do serwera GIT.

Klient może wygenerować pary kluczy publiczno-prywatnych w następujący sposób:

$ ssh-keygen

Naciskać .

Naciskać .

Naciskać .

Naciskać .

Teraz klient może znaleźć swój klucz publiczny w następujący sposób:

$ cat ~/.ssh/id_rsa.pub

Klucz publiczny klienta powinien zostać wydrukowany. Teraz klient może wysłać ten klucz publiczny do menedżera (który zarządza serwerem GIT). Menedżer może następnie dodać klucz publiczny do serwera GIT. Następnie klient może uzyskać dostęp do serwera GIT.

Powiedzmy, że klient wysłał swój klucz publiczny do GIT Server Manager. Menedżer przesłał klucz publiczny do /tmp/shovon-key.pub Plik na serwerze GIT.

Teraz menedżer serwera GIT może dodać klucz publiczny klienta w następujący sposób:

$ cat /tmp /shovon-key.pub >> ~/.ssh/autoryzowane_keys

Teraz .ssh/autoryzowane_keys Plik powinien mieć klucz publiczny klienta.

Tworzenie repozytoriów GIT na serwerze:

Klienci nie mogą tworzyć nowych repozytoriów GIT na serwerze. Menedżer serwera GIT musi utworzyć repozytorium na serwerze. Następnie klienci mogą klonować, pchać/pobierać z repozytorium.

Teraz utwórz nowe puste repozytorium GIT TestRepo na serwerze GIT w następujący sposób:

$ git init - -be -bare testRepo

Teraz klient musi znać adres IP serwera GIT, aby uzyskać dostęp do TestRepo Repozytorium Git.

Menedżer serwera GIT może znaleźć te informacje w następujący sposób:

$ ip a

Jak widać, adres IP serwera GIT jest 192.168.21.185. Teraz menedżer serwerów może to powiedzieć klientom, którzy będą pracować nad projektem.

Klonowanie repozytorium git z serwera:

Gdy klient zna adres IP i nazwę repozytorium Git, może sklonować go do swojego komputera w następujący sposób:

$ git Clone [email protected]: ~/> testRepo

Teraz wpisz Tak i naciśnij . Musisz to zrobić raz, tylko za pierwszym razem.

TestRepo Repozytorium GIT powinno być sklonowane z serwera.

Nowy katalog TestRepo należy utworzyć.

Wprowadzanie zmian i przesuwanie zmian na serwerze GIT:

Teraz klient może dodać zobowiązania do testRepo/ repozytorium i przesuń zmiany na serwer GIT.

$ CD TestRepo/
$ echo „Hello World”> test.tekst
$ git add .
$ git commit -m „początkowe zatwierdzenie”
[/cc [

[cc lang = "bash"]
$ git push pochodzenie

Dodanie nowego członka zespołu:

Powiedzmy teraz, pion chce przyczynić się do TestRepo Repozytorium Git.

Wszystko, co musi zrobić, to wygenerować parę kluczy SSH i wysłać klucz publiczny do GIT Server Manager.

$ ssh-keygen

Gdy menedżer serwera Git ma klucz publiczny pion, Może przesłać go na serwer GIT i dodać do .ssh/autoryzowane_keys Plik w następujący sposób:

$ cat /tmp /bob-key.pub >> ~/.ssh/autoryzowane_keys

Teraz, pion może klonować TestRepo Repozytorium git z serwera w następujący sposób:

$ git Clone [email protected]: ~/testrepo

TestRepo należy sklonować.

Nowy katalog TestRepo powinno być utworzone w komputerze Boba.

Teraz Bob może przejść do repozytorium GIT w następujący sposób:

$ CD TestRepo/

Powinien znaleźć niektóre istniejące zatwierdzenia.

$ git log

Teraz, pion może wykonać własną pracę i popełnić. Następnie wepchnij zmiany na serwer.

$ echo „Hello World 2” >> Testuj.tekst
$ git add .
$ git commit -m „Zmieniona wiadomość”
$ git push pochodzenie

Teraz inne osoby pracujące nad tym samym repozytorium mogą pobrać zmiany w następujący sposób:

$ Git Pull Origin

Powinien to znaleźć zobowiązania pion zrobiony.

W ten sposób konfigurujesz serwer GIT z SSH na Ubuntu i używasz go. Dziękujemy za przeczytanie tego artykułu.