Git i GitHub

Słowo wstępu

Git jest zintegrowanym środowiskiem składowania z systemem kontroli wersji (VCS – Version Control System). Jest aplikacją instalowaną na komputerze twórcy i współpracującą z GitHub’em. W ramach tych zajęć skupimy się jednak na GitHub’ie zaznaczając jednak, że pełna integracja umożliwia wygodną pracę na własnym sprzęcie w ramach rozwijanego projektu, a poszczególne wersje zmienianego oprogramowania czy dokumentacji automatycznie są przerzucane do katalogu roboczego w ramach serwera GitHub’a. Oprogramowanie Git’a można pobrać ze strony git-scm.com. Wewnętrznie można wyróżnić 3 stany, w których mogą znajdować się nasze pliki:

  • zatwierdzony – dane zostały zachowane w lokalnej bazie danych;
  • zmodyfikowany – plik został zmieniony, ale dane nie zostały wprowadzone do bazy danych;
  • śledzony – zmodyfikowany plik został przeznaczony do zatwierdzenia w bieżącej postaci w następnej operacji commit.

W systemie Git’a znajdują się 3 sekcje:

  1. Katalog roboczy (working directory) – to obraz (snapshot) naszej załadowanej wersji projektu.
  2. przechowalnia (staging area) – to plik, który zawiera informacje o tym, czego będzie dotyczyć następna operacja commit.
  3. Katalog Git (git directory/ repository) – to najważniejsze miejsce. To właśnie ten katalog jest używany podczas wysyłania repozytorium z innego komputera.

Podczas pracy z Git’em nasze pliki będą zmieniały lokalizację w tych katalogach. Na początku pliki znajdują się w katalogu roboczym. Po wpisaniu komendy $git add. przechodzą do przechowalni. Po wpisaniu polecania $git commit trafiają do głównego katalogu – repozytorium.

Diagram przepływu pracy w Git: przedstawia proces od katalogu roboczego (working directory), przez etap przygotowania zmian (git add → staging area), aż do zatwierdzenia (git commit) w repozytorium.

Git współpracuje z macierzystym dla niego systemem repozytorium GitHub. Aby skorzystać z niego trzeba utworzyć konto i się zalogować do przydzielonego repozytorium.

Tworzenie konta i pierwsze repozytorium

Ekran logowania do GitHub z formularzem rejestracji nowego konta. Widoczne pola: 'Username or email address', 'Password' z linkiem 'Forgot password?' oraz przycisk 'Sign in'. Sekcja zachęty dla nowych użytkowników: 'New to GitHub? Create an account.'.

Po zalogowaniu oglądamy poniższy ekran na którym widać całe przydzielone nam środowisko. W ramach niego możemy stworzyć wiele projektów (repozytoriów) i indywidualni nimi zarządzać. W tym celu używamy widocznego w lewej, górnej części ekranu klawisza new.

Ekran główny GitHub po zalogowaniu, przedstawiający panel użytkownika z opcjami: tworzenie nowego repozytorium (przycisk 'New'), sekcje 'Repositories', 'Recent activity' oraz poradnik 'Learn Git and GitHub'. Zawiera również sekcję wprowadzenia osobistego z szablonem README i informacje o wydarzeniach społecznościowych.

W tym momencie możemy zadecydować o konfiguracji tego repozytorium i wybrać jego parametry:

Formularz tworzenia nowego repozytorium w GitHub, zawierający pola: wybór właściciela (Owner), nazwa repozytorium (przykład: 'ZZIP'), opcjonalny opis, ustawienia widoczności (Public/Private) oraz opcje inicjalizacji (README, .gitignore, licencja). Przycisk 'Create repository' na dole formularza.

Możemy dodać do niego standardowe pliki informacyjne takie jak: README, informacje o licencji czy o wykluczeniach.

To co nam ukazuje się następnie okienko naszego projektu, gdzie możemy rozpocząć wgrywanie plików 1 Możliwe jest rozpoczęcie pracy bezpośrednio w Git na własnym komputerze w wybranym katalogu, gdzie automatycznie treści będą przenoszone do GitHub’a, ale to temat na odrębne zajęcia.

Interfejs nowo utworzonego repozytorium GitHub 'ZZIP' z zakładkami (Pull Requests, Settings), opcjami dodawania plików oraz sekcją 'About'. Widoczne: pusta lista plików, checkboxy zarządzania wersjami (Releases, Packages) i stopka z informacjami prawnymi GitHub.

Jak zaprosić innego użytkownika do współpracy (Contributors)

W sekcji Settings klikamy w lewym menu opcję Manage access, zostaniemy poproszeni o ponowne wpisanie naszego hasła, a następnie ukazuje się nam poniższy obraz.

Interfejs zarządzania dostępem do repozytorium GitHub w sekcji 'Settings > Manage access'. Przedstawia opcję dodawania współpracowników (Add people), informację o aktualnych uprawnieniach (Only you can contribute) oraz listę ustawień bezpieczeństwa (Branches, Webhooks, Secrets).

W oknie Manage access możemy dodać zaproszonych do współpracy2zaproszenia wygasają po 7 dniach – na liście współpracowników widzimy status zaproszenia.

Interfejs zarządzania dostępem do repozytorium GitHub pokazujący sekcję „Zarządzaj dostępem” z opcjami zaproszenia współpracowników. Zawiera pole wyszukiwania do dodawania użytkowników, status istniejących zaproszeń oraz ustawienia widoczności repozytorium.

Manual znajduje się pod tym linkiem.

Dodatki

Manual dla użytkowników GitHub’a znajduje się pod tym linkiem.

Przewodnik po GitHub’ie za pośrednictwem projektu Hello World.

Zadanie

W ramach zadania należy:

  • założyć konto na github.com
    • Utworzyć puste repozytorium
    • Dodać dowolny plik
    • Dodać plik do repozytorium i wykonać pierwszy commit (manual)
    • Wprowadzić zmiany w pliku
    • Wyświetlić status repozytorium
    • Zobaczyć co zmieniło się w pliku
    • Dodać commita ze zmianami (manual)
    • Dodać kolejny plik
    • Wprowadzić zmiany w obu plikach
    • Dodać commit ze zmianami tylko w nowym pliku 
  • dodać współpracownika do repozytorium (jaroslaw.utracki@us.edu.pl)

CATEGORIES:

Dydaktyka-ZZiP

Tags:

Comments are closed

Latest Comments