GitHub: czym jest i do czego służy?

24/02/2019

3 minut czytania

GitHub to jeden z wielu, a zarazem najpopularniejszy z serwisów internetowych, hostujących repozytoria Git w chmurze. Dzięki serwisom takim jak GitHub możemy udostępniać swój kod innym programistom i współpracować z nimi zdalnie w czasie rzeczywistym. 

Git - co to jest?

Git to system kontroli wersji. Jego pomysłodawcą i twórcą był Linus Torvalds (pisaliśmy o nim, predstawiając system operacyjny Linux). Git powstał jako narzędzie wspomagające rozwój jądra Linux. Git to system, który pozwala programistom zapisywać wszystkie zmiany w pisanym kodzie – w taki sposób, aby niczego nie stracili. Programista w każdej chwili może wrócić do poprzedniej wersji, jeżeli zajdzie taka potrzeba. Dzięki podglądowi poprzednich wersji, można prześledzić, jak program się rozwijał, cofnąć się, odzyskać przypadkowo utracone zmiany czy powrócić do wcześniejszych pomysłów. Z systemu kontroli wersji Git korzystają zarówno programiści w korporacyjnych zespołach, jak i ci pracujący samodzielnie. Warto wyrobić sobie ten dobry nawyk korzystania z systemu kontroli wersji – nie raz okaże się, że uratuje nam to skórę i zapobiegnie marnowaniu czasu!

Studenci Codecool poznają Gita już w pierwszym module kursu programowania. Git pozwala mentorom śledzić postępy podopiecznych, ale też pomaga studentom efektywniej dzielić się kodem, nad którym pracują w zespołach.

Naturalnie w zespole programistycznym często zdarza się, że kilka osób pracuje jednocześnie nad tym samym programem. Co mogłoby się zdarzyć, gdyby nie używali systemu kontroli wersji?  W sytuacji, gdy dwóch programistów edytuje ten sam plik równolegle na swoich komputerach, jeden z nich mógłby nadpisać plik wgrany na dysk przez tego drugiego i efekty jego pracy zostałyby utracone. Git pozwala zarządzać zespołem w taki sposób, aby uniknąć takich konfliktów. Git poinformuje programistów, że inna osoba również edytuje dany plik, a także w inteligentny sposób postara się połączyć wprowadzone przez obu programistów zmiany.

Zainteresuje Cię również: Kurs programowania dla początkujących

Jaką funkcję pełni GitHub?

Z Gita można korzystać lokalnie, mając na swoim komputerze tzw. repozytorium lokalne, do którego nikt inny nie może mieć dostępu. Z kolei GitHub jest serwisem, który pozwala na hostowanie repozytoriów i udostępnianie je innym programistom – przede wszystkim naszym współpracownikom. GitHub jest więc narzędziem ułatwiającym pracę zespołową, z zachowaniem kontroli wersji. Żartobliwie nazywamy go Pinterestem dla programistów. Ma oczywiście o wiele więcej funkcji, niż ten serwis do dzielenia się pięknymi treściami. Jakie możliwości daje GitHub?

Na GitHubie można oczywiście współpracować nie tylko z ludźmi z firmy. GitHub zrzesza wokół siebie ogromną społeczność i umożliwia tworzenie projektów open source, w które mogą się zaangażować chętni programiści z całego świata. Niektórzy udostępniają swój kod innym w celu wzajemnej pomocy i rozwoju – by każdy początkujący programista mógł go pobrać i zastosować w swoim programie. Korzystanie z zasobów publicznie dostępnych na GitHub może być bardzo pomocne, gdy dopiero uczysz się programować.

Obecnie GitHub może także pełnić funkcję portfolio – często zdarza się, że rekruterzy IT wyszukujący programistów na zlecenie swoich klientów, wyszukują kawałki kodu w poszukiwanej technologii. Większość projektów, które realizowane są w ramach kursu programowania Codecool, nasi studenci wgrywają na GitHuba, tworząc tym samym portfolio prezentujące ich umiejętności i wkład w rozwój projektów.

Funkcje GitHub:

  • zapewnia hostowanie repozytoriów
  • udostępnianie fragmentów kodu innym programistom w zespole
  • dzielenie się kodem ze społecznością GitHub
  • tworzenie projektów open source
  • może stanowić portfolio programisty
  • obserwowanie cudzych projektów

Sprawdź również: Ile zarabia programista?

Repozytorium Git - co to takiego?

Repozytorium to katalog, w którym przechowywany jest program. W takim repozytorium uruchomiony jest Git, czyli kontrola wersji. Git monitoruje pojawiające się zmiany i pozwala je zapisywać. GitHub jest serwisem, który pozwala na wgrywanie repozytoriów do internetu i przechowuje je w chmurze.GitHub cały czas się rozwija. Obecnie posiada także funkcję zarządzania projektem programistycznym. Oczywiście wgrane repozytorium jest jednym z programów, który wgrywamy na GitHub. Osoby zaangażowane w projekt mogą je pobrać, przeglądnąć i za pośrednictwem GitHuba zgłosić błędy i swoje uwagi.

GitHub jest obecnie najpopularniejszym, najczęściej stosowanym narzędziem tego typu na świecie. Inne, podobne serwisy to Subversion (SVN), TFS, GitLab, BitBucket. GitHub oferuje płatne plany dla firm. Dają one możliwość wykupienia prywatnych, zabezpieczonych repozytoriów bez dostępu dla osób trzecich.

GitHub pozwala na różne integracje, np. Continuous Integration. Wysyłając kod na GitHub, może on zostać automatycznie sprawdzony i przetestowany, a następnie wgrany na serwer. Odpowiednio skonfigurowany GitHub może więc wykonać za nas cały deployment.

Podsumowanie

Korzystanie z serwisu GitHub to dobry nawyk każdego programisty. Nie ma się co wstydzić swojego kodu, nawet jeśli dopiero zaczynasz. Na GitHubie możesz uzyskać pomoc i feedback oraz skorzystać z kodu pisanego przez bardziej doświadczonych kolegów. Wgrywając swoje repozytoria na GitHub nie tylko zabezpieczasz swoją pracę, ale też tworzysz swoje wirtualne portfolio. W przyszłości może się okazać, że ktoś prześledzi drogę twojego rozwoju i zaproponuje ci pracę!

O nas

Codecool to miejsce, w którym zaczyna się Twoja kariera w IT. Daj się pokierować naszym profesjonalnym mentorom, skorzystaj z gwarancji pracy i odroczonej płatności.
Masz pytanie? Możemy pomóc! Podrzuć nam emaila na [email protected], albo napisz do nas na Facebooku.

Powiązane posty

Zarządzanie czasem i zadaniami: kluczowe umiejętności miękkie do osiągnięcia sukcesu w kodowaniu
Nie tylko umiejętności techniczne wyróżnią Cię...
Twój pierwszy tydzień w Codecool
Twój pierwszy tydzień w Codecool będzie...
TOP 25 zawodów przyszłości w IT: jak rozpocząć karierę
Branża technologiczna rozkwita i generuje ogromną...

Add meg elérhetőséged, és hamarosan visszahívunk!