Obecnie rośnie liczba programów do kodowania i tworzenia oprogramowania. W związku z tym zapotrzebowanie na programy stosowane w tej dziedzinie również jest ogromne. Spowodowało to stworzenie wysoce konkurencyjnego środowiska w świecie online, w którym różne programy kodowania i DevOps rywalizują o nagrodę za najczęściej używany program w swojej dziedzinie. Git jest jednym z takich programów. W połączeniu z nowym, normalnym stanem pracy zdalnej w przypadku zadań wykonywanych głównie za ekranem komputera, doprowadziło to do tego, że wiele osób hostuje swoje programy, w tym Git, na zdalnych serwerach. Jeśli również znajdujesz się w tej kategorii i chcesz zainstalować własny serwer Git, nie szukaj dalej.
W tym artykule omówię, czym dokładnie jest Git i omówię jego zalety i wady, zanim przejdę do przedstawienia wymagań, których będziesz potrzebować i hostować własny serwer Git. Chodźmy!
Co to jest Git?
Git to program DevOps, który ma na celu umożliwienie koderom i programistom przeglądanie swoich projektów i wykonywanie ich tak efektywnie, jak to możliwe. Najważniejszą funkcją Gita jest śledzenie zmian w kodzie źródłowym w czasie. Git jest darmowe i open-source i otrzymuje regularne aktualizacje. To sprawia, że Git jest jednym z najłatwiej dostępnych i niezawodnych programów DevOps do kodowania na świecie. Każdy komputer, na którym znajduje się instancja Gita, pełni rolę pełnego katalogu repozytorium z własną, odrębną historią wszystkich zmian plików. Po blisko 20 latach aktywnego rozwoju i ponad 30 aktualizacjach wydanych dla Git, program działa obecnie w wersji 2.40.0 i oczekuje na więcej przyszłych aktualizacji. Poznajmy teraz niektóre przypadki użycia Gita, aby lepiej zrozumieć, dlaczego w ogóle chcielibyśmy zainstalować serwer Git.
Przypadki użycia Gita
Zanim zbyt szybko przejdziemy do hostowania własnego lokalnego serwera Git, szybko zapoznajmy się z głównymi przypadkami użycia Git, aby zrozumieć, dlaczego w ogóle będziemy uruchamiać serwer Git.
Repozytorium klonowania
Wielu programistów i programistów woli tworzyć repozytorium Git na serwerze, aby śledzić potrzebne programy i pliki. Git może łatwo i za pomocą kilku podstawowych poleceń pozwolić ci zreplikować twoje obecne repozytorium jądra Linuksa i użyć go do gromadzenia znacznie bardziej spójnego i wydajnego dziennika zmian tylko tych plików, które cię interesują. Proces jest łatwy do wykonania i możesz z łatwością zarządzać za jego pomocą małymi i dużymi projektami kodowania. Proces ten nazywany jest także „rozgałęzienie”, ponieważ w zasadzie tworzysz nową gałąź z już istniejącego repozytorium.
Przepływ pracy w Gicie
Przepływ pracy Git to kolejny ważny przypadek użycia, którego użyjesz po skonfigurowaniu własnego serwera git. Możesz użyć lokalnego serwera Git, aby utworzyć dwa zestawy oddziałów za pomocą procesu klonowania i mieć jeden z nich reprezentatywny dla Twojego projektu, na przykład strony internetowej. Następnie możesz utworzyć serwer Git z oddzielną gałęzią produkcyjną, na której będą rejestrowane wszystkie zmiany wprowadzane przez każdego programistę, a nawet można je przetestować przed wdrożeniem. To wielowarstwowe podejście do programowania i testowania nie tylko zwiększa Twoją wydajność, ale także sprawia, że śledzenie procesu rozwoju i zmian jest niezwykle łatwe.
Łączenie
Pamiętasz o rozgałęzianiu repozytorium i dzienniku zmian? Jak sama nazwa wskazuje, łączenie jest całkowitym przeciwieństwem tej operacji. Podczas łączenia, które jest powszechnie uważane za najtrudniejszy aspekt Gita, chcemy wstrzyknąć dane z jednego węzła gałęzi repozytorium z powrotem do repozytorium głównego, z którego zostały pierwotnie podzielone. Zwykle ma to na celu utworzenie serwera Git z kompleksowym raportem projektu i historią zmian, która obejmuje wszystkie zmiany w projekcie z różnych obszarów w jednym zwięzłym i łatwym do rozszyfrowania repozytorium. Podczas gdy w trakcie projektu potrzebne jest rozgałęzianie, aby zapobiec nieporozumieniom, łączenie ma na celu odwrócenie działania i zapewnienie wyraźniejszego obrazu na koniec projektu podczas rozwiązywania problemów.
Hostuj własny serwer Git: zalety i wady
Każdy program ma zestaw kluczowych zalet i wad, o których muszą wiedzieć użytkownicy, którzy chcą dostać się do programu i używać go w swoich programach. W tej sekcji omówię zalety i wady dotyczące Gita. Jednak te zalety i wady dotyczą Gita tylko wtedy, gdy sam go hostujesz i o tym mniej więcej jest ten przewodnik, więc przejdźmy do tego.
Git hostowany samodzielnie: zalety
Brak zaangażowania stron trzecich
Dzięki samodzielnemu hostingowi Git Ty i osoby, które widzisz, będziesz jedynymi osobami mającymi dostęp do Twoich plików. Eliminuje to zasadniczo wszelkie niepożądane zaangażowanie stron trzecich i pozwala na spokojną realizację projektu. Twoje dane będą również znacznie bezpieczniejsze, a zasoby, które miałeś na celu zapewnienie bezpieczeństwa, będziesz mógł przeznaczyć gdzie indziej.
Bezpieczeństwo
Mówiąc o bezpieczeństwie, Git jest tak bezpieczny, jak to tylko możliwe dzięki najlepszym praktykom i wdrażaniu narzędzi innych firm. Chociaż poziom bezpieczeństwa spada, gdy korzystasz z własnego hostingu, zamiast z niego korzystać, istnieje niemal nieograniczona swoboda w zakresie bezpieczeństwa, jakie możesz wykonać we własnym zakresie.
Nieograniczone repozytoria
Pamiętasz klonowanie i rozgałęzianie? Nie ma ograniczeń co do liczby repozytoriów, które możesz utworzyć za pomocą Git. To sprawia, że niezwykle dobrze nadaje się do większych projektów, w których każda gałąź rozwojowa potrzebuje swojego repozytorium. Jest to również doskonałe w przypadku projektów z dużymi plikami, takimi jak zasoby 3D, i przypadków, w których pracujesz z Unity.
Git hostowany samodzielnie: Wady
Wysoki poziom wysiłku związanego z zarządzaniem
Repozytoria Git mogą szybko wymknąć się spod kontroli. Jeśli zdecydujesz się skonfigurować serwer Git na własnej platformie, zarządzanie wszystkimi gałęziami i metadanymi może wkrótce stać się bólem głowy. Musisz więc albo zachować niewiarygodną precyzję, albo zlecić to wykwalifikowanemu programiście.
Przybliżona krzywa uczenia się
Hostowanie Gita to jedno, ale opanowanie go i uruchomienie lokalnego serwera Git to zupełnie inna sprawa. Git prawdopodobnie ma jeden z najwyższych pułapów umiejętności spośród wszystkich programów DevOps opartych na repozytorium i znowu trzeba spędzić dużo czasu na jego nauce lub zlecić to podmiotom zewnętrznym.
Brak graficznego interfejsu użytkownika i obsługi systemu Windows
Czy chcesz skonfigurować serwer Git w systemie Windows? A może chciałeś skonfigurować serwer Git do działania z GUI? Cóż, nie masz szczęścia. Jesteś ograniczony do systemów operacyjnych z jądrem Linuksa jako kodem podstawowym i nie ma graficznego interfejsu użytkownika, który pomógłby Ci to ułatwić. Czy chcesz zainstalować serwer Git i własny host? Lepiej naucz się podstaw kodowania.
Przestarzała metoda
Według wszelkich możliwych wskaźników używanie Gita na serwerze hostowanym samodzielnie wydaje się przestarzałe i wyprzedzone przez inne, bardziej wydajne metody uruchamiania Gita. Najlepszym przykładem bardziej wydajnego procesu uruchamiania Git jest uruchomienie GitLaba, więc zanim zdecydujesz się na uruchomienie własnego serwera Git, sprawdź GitLab zbyt!
Wymagania potrzebne do zainstalowania serwera Git
Teraz szybko omówmy wymagania potrzebne do skonfigurowania serwera Git i hostowania własnego serwera Git. Aby hostować Git, potrzebujesz tylko dwóch komponentów, serwera i instancji Git, z odrobiną wiedzy na temat kodowania, aby przeprowadzić proces konfiguracji serwera Git.
Serwer Gita
Jeśli chodzi o serwer, możesz użyć innego komputera, serwerów dedykowanych od tradycyjnych dostawców lub, jeśli wolisz bardziej praktyczne podejście, skorzystać z serwera chmurowy VPS (wirtualny serwer prywatny). Mając VPS, możesz bezpośrednio zarządzać serwerem i jednocześnie obsługiwać instancję Git. Pamiętaj, że na Twoim serwerze musi być zainstalowana dystrybucja Linuksa, aby móc skonfigurować serwer Git. Cloudzy oferuje szeroką gamę Serwer VPS z Linuksem usługi obejmujące ponad 10 renomowanych dystrybucji Linuksa, takie jak Ubuntu, Debian, CentOS, Kali i OpenSUSE. Już od 4,95 USD miesięcznie możesz zdobyć godny zaufania serwer Linux blisko Twojej lokalizacji, aby zapewnić doskonałą jakość połączenia i używać go do samodzielnego hostowania i uruchamiania serwera Git!
Zdobądź ekonomiczny lub premium Linux VPS do hostowania swojej witryny internetowej lub zdalnego pulpitu, w najniższej cenie. VPS Działa na platformie Linux KVM w celu zwiększenia wydajności i działa na wydajnym sprzęcie z pamięcią masową SSD NVMe w celu zwiększenia szybkości.
Przeczytaj więcejInstancja Gita
Proces konfiguracji serwera Git jest łatwy i zrobimy to automatycznie w ramach procesu instalacji. Jak wspomniano, Git jest oprogramowaniem typu open source i nie kosztuje. To właśnie sprawia, że Git jest lepszy od wielu innych programów opartych na repozytorium, skupiających się na kodowaniu i programowaniu. Teraz, gdy mamy już wymagania, przejdźmy od razu do naszego przewodnika krok po kroku dotyczącego instalacji serwera Git na serwerze z systemem Linux!
Zainstaluj serwer Git w systemie Linux (przewodnik krok po kroku)
Krok 1: Pobierz i zainstaluj Git
Oto pierwszy krok w procesie instalacji serwera Git. W terminalu wybranej dystrybucji Linuksa wprowadź następujące polecenie, aby rozpocząć pobieranie Git:
Dystrybucje oparte na Ubuntu/Debianie:
sudo apt install git
Dystrybucje oparte na Archu:
sudo pacman -S git
Dystrybucje oparte na RHEL:
sudo dnf install git
To polecenie pobierze i zainstaluje Git na serwerze Linux. Poczekaj na zakończenie procesu.
Krok 2: Zarejestruj się i skonfiguruj serwer Git
Jeśli masz serwer lokalny na innym komputerze, uruchom go, w przeciwnym razie, jeśli masz VPS, użyj SSH lub RDP, aby zdalnie połączyć się z serwerem Linux. Teraz skonfigurujemy serwer Git tak, aby działał zdalnie. Zrobimy to, tworząc konto Git za pomocą następującego polecenia:
ssh username@address
sudo useradd git
Następnie wprowadź to polecenie, aby przełączyć się na nowo utworzone konto:
su git
Ten krok jest wykonywany głównie w celu zapewnienia bezpieczeństwa lokalnego serwera Git. Korzystając z tego konta, będziesz administratorem serwera. Możesz bezpiecznie organizować potencjalnych przyszłych użytkowników w grupy użytkowników z predefiniowanymi ograniczeniami i poziomami dostępu.
Krok 3: Utwórz katalogi SSH i Utwórz repozytorium git na serwerze
Następnym krokiem w procesie instalacji serwera Git jest utworzenie ekskluzywnego katalogu SSH, w którym będziemy zapisywać nasze pliki klucze publiczne i utwórz repozytorium Git na serwerze z dodatkowymi warstwami zabezpieczeń i zdefiniowanymi poziomami dostępu. Zacznij od wpisania następującego polecenia:
ssh git@address
mkdir .ssh
chmod 700 .ssh/
touch .ssh/authorized_keys
Po ograniczeniu dostępu dla innych osób za pomocą tego wiersza poleceń wprowadź następny wiersz, aby upewnić się, że Twoje klucze SSH są bezpiecznie przechowywane w autoryzowane_klucze folder, do którego tylko Ty możesz uzyskać do nich dostęp (uruchom to polecenie tylko wtedy, gdy NIE masz pliku id_rsa.pub plik):
cd .ssh
ssh-keygen -t rsa
cat id_rsa.pub
Na koniec skopiuj klucz publiczny SSH utworzony w celu skonfigurowania nowego połączenia SSH z dodatkowymi zabezpieczeniami na lokalnym serwerze Git:
cd .ssh
vi authorized_keys
Krok 4: Utwórz katalog główny
Na serwerze Linux musisz utworzyć nowy katalog, aby zapisać wszystkie repozytoria, których Twój Git będzie używał w przyszłych projektach. Możesz poznać tajniki zarządzania repozytoriami Git. Wpisz to polecenie:
mkdir directory_name
Krok 5: Dodaj swój projekt!
Udało Ci się stworzyć serwer Git! Proces instalacji serwera Git został pomyślnie zakończony. Udało Ci się także pomyślnie skonfigurować serwer Git. Pozostaje tylko dodać dodatkowe projekty za pomocą następującego polecenia:
cd parent_directory
mkdir new_project.git
Następnie wprowadź to polecenie, aby dodać zdalne źródło do komputera lokalnego:
git init --bare
git remote add origin name git@address:new_project.git
Na koniec wykonaj polecenie Git Push, aby sprawdzić, czy wszystko działa zgodnie z oczekiwaniami:
touch testfile
git add testfile
git commit -m "test file"
git push name master
git clone git@address:new_project.git
Gratulacje, udało Ci się pomyślnie hostować git i utworzyć repozytorium git na serwerze.
Często zadawane pytania
Czy mogę hostować Git bez serwera?
Nie. Bez względu na charakter Twojego serwera, będziesz potrzebować sprzętu, który będzie pełnił rolę Twojego serwera. Możesz użyć GitHuba, aby działać jako serwer w chmurze dla swoich repozytoriów lub skorzystać z naszego Serwer VPS oferuje lub korzysta z innej usługi hostingowej strony trzeciej, aby działać jako serwer.
Czy istnieje sposób na zainstalowanie serwera Git z graficznym interfejsem użytkownika?
Tak. Chociaż sam Git nie obsługuje GUI, dostępna jest samodzielna wersja z GUI, znana jako „Git GUI”, dla osób, które nie mogą żyć bez GUI.
Czy istnieje płatny plan Git?
Nie. Git był i zawsze będzie darmowym programem o otwartym kodzie źródłowym, co odzwierciedlają jego pierwotni twórcy i wydawcy. Możesz więc używać programu jako pochodnej do rozwoju swojego programu, w przeciwnym razie program jest bezpłatny.
Dlaczego warto hostować własny serwer Git?
Załóżmy, że chcesz uruchomić mały projekt z ograniczoną liczbą repozytoriów. W takim przypadku samodzielny hosting jest znacznie bardziej prywatny i bezpieczny. To jest więc główny motyw. Jednak w miarę przechodzenia do większych projektów z większą liczbą repozytoriów, samodzielny hosting zaczyna tracić na wydajności.