Prywatny serwer Git na komputerze Raspberry Pi
Nieodłącznym elementem programowania w niemal każdej branży jest obsługa systemów kontroli wersji. Jest to oprogramowanie służące do zarządzania wersjami kodu źródłowego, co ma niewątpliwe zalety podczas zarządzania projektem. Dają możliwość wygodnej pracy nad kodem przez kilka osób, a także sprawdzenie w miarę potrzeb poprzednich wersji kodu w celu wykrycia błędów. Umożliwiają także tworzenie różnych gałęzi w projekcie (np. deweloperskiej i stabilnej). Te funkcje znacząco upraszczają budowę średnich i dużych projektów, ale są przydatne nawet przy pisaniu niewielkich programów.
Najpopularniejszym systemem kontroli wersji jest bez wątpienia Git. Spełnia on wszystkie powyższe warunki, jest szybki oraz rozproszony, a więc kopie repozytorium znajdują się w kilku miejscach. Mimo, że teoretycznie system rozproszony nie wymaga stosowania aplikacji serwerowych, to bardzo często stosowane są serwery centralne takie jak GitHub, Bitbucket czy GitLab. Takie serwery znacznie zwiększają możliwości systemu, na przykład o możliwość publikacji kodu, utworzenie dokumentacji itd.
W tym artykule zaproponuję jednak inne podejście. Otóż zaprezentuję jak zainstalować prywatny serwer git na Raspberry Pi. Takie podejście jest rzadziej stosowane, ale czasem przydatne. Można je zastosować, gdy zależy nam na prywatności czy też własnej, specyficznej konfiguracji serwera. Taka opcja może być też po prostu najwygodniejsza (np. gdy cały zespół pracuje w jednej sieci lokalnej i nie ma potrzeby wysyłać kod na serwer hostingowy). Jeszcze jedną zaletą są możliwości edukacyjne – podczas instalacji i obsługi własnego serwera można zdobyć dogłębną wiedzę na temat działania Gita.
Instalacja prywatnego serwera git na Raspberry Pi
Serwer będę instalował na Raspberry Pi 4 B, ale instrukcja powinna działać również ze starszymi wersjami. Użyję systemu Raspberry Pi OS w wersji z 22.09.2022, ale w zasadzie powinno to działać na większości systemów Linux dla malinki. Warto zadbać o to, żeby można była zalogować się do systemu przez protokół SSH. Przed instalacją należy zaktualizować system komendami:
sudo apt-get update sudo apt-get full-upgrade
Na początku należy zadbać o sprawdzenie czy zainstalowany jest program git. Powinien być zainstalowany, ale można to sprawdzić komendą:
sudo apt-get install git-core
W razie, gdyby gita jednak nie było w systemie, zostanie on od razu zainstalowany.
W tym momencie można już utworzyć repozytorium. Najpierw należy utworzyć folder, w którym będzie ono przechowywane.
mkdir -p /home/pi/git/repozytorium
Przechodzimy do folderu:
cd /home/pi/git/repozytorium
I inicjujemy repozytorium gita. Opcja bare tworzy puste repozytorium.
git init --bare
Te czynności będzie trzeba powtórzyć za każdym razem kiedy będziemy chcieli utworzyć nowe repozytorium.
Rys. 1. Konsola SSH malinki po inicjalizacji repozytorium
Obsługa serwera git na komputerze PC
Teraz można pracować z repozytorium z poziomu komputera, na którym piszemy kod. Ja pokażę instrukcję dla systemu Windows 10 oraz pakietu git-scm.
Jeśli pakiet jest już zainstalowany, to trzeba określić folder, w którym będzie znajdować się repozytorium z serwera git. Najłatwiej to zrobić z poziomu eksploatora Windows. Wtedy klikamy na wybrany folder prawym przyciskiem myszy i wybieramy opcję Git Bash Here. Otworzy to konsolę gita w danym folderze.
Przed wysłaniem kodu na malinkę należy dodać folder do Gita. W tym celu należy uruchomić w folderze komendę:
git init
W tym momencie należy dodać do folderu repozytorium zdalne komendą:
gitremote
addrepozytorium
pi@raspberrypi.local:/home/pi/git/repozytorium
Aby teraz wysłać kod do repozytorium na malince należy wpisać następujące komendy:
git add . git commit -m "Pierwszy commit" git push repozytorium master
Rys. 2. Wgrywanie kodu do repozytorium na Raspberry Pi – wiadomość o sukcesie
Oczywiście można też zadziałać w drugą stronę, czyli sklonować repozytorium z malinki – repozytorium, które mogło już zostać zmienione. Aby to zrobić należy wykonać komendę:
git clone pi@raspberrypi.local:/home/pi/git/repozytorium/
Osobiście zachęcam do zapoznania się z możliwościami i obsługą Gita. Dobrym źródłem informacji na ten temat jest oficjalna dokumentacja programu dostępna na stronie https://git-scm.com/doc. W ramach dokumentacji dostępna jest też darmowa książka Pro Git, która w przystępny sposób pozwala nauczyć się obsługi narzędzia.
Komputery Raspberry Pi oraz wszystkie niezbędne akcesoria możesz kupić w sklepie Kamami.pl, który jest oficjalnym dystrybutorem produktów Raspberry Pi w Polsce