Jak obiecałem w jednym z poprzednich artykułów opiszę jak wygląda praca z projektem za pośrednictwem zdalnego repozytorium.
Większość projektów nie jest prowadzona samodzielnie, jest w niego zaangażowane kilku (-nastu, -dziesięciu) innych programistów. Każdy z nich może lokalnie prowadzić własną ścieżkę, ale z doświadczenia wiem, że przydaje się jedno wspólne repozytorium. Punkt centralny dla naszej pracy.

Inicjalizacja repozytorium

Przypuśćmy, że posiadamy serwer w domenie projekty.pl i tam chcemy założyć nasze centralne repozytorium. W tym celu logujemy się na naszym serwerze:

To wszystko. Wszystkie powyższe komendy za pewne są jasne, tylko jedna może nasuwać pewne niepewności:

Co daje nam atrybut –bare? Otóż w naszym zdalnym repozytorium nie potrzebujemy kopii plików projektu tylko samą informację o repozytorium. To właśnie robi atrybut –bare – tworzy strukturę plików repozytorium, do którego możemy się połączyć tylko zdalnie bez plików projketu wewnątrz.

Po wylogowaniu się z naszego serwera wracam do naszego projektu na lokalnym komputerze.

który jest już pod kontrolą wersji. Wydajemy komendę:

dodaje nowe zdalne repozytorium,

nasza nazwa tego zdalnego repozytorium,

url do tego zdalnego repozytorium.

Sprawdźmy, czy dodano nasze zdalne repozytorium:

Wysyłanie plików na zdalny serwer

Do synchronizacji lokalnego repozytorium ze zdalnym wykonujemy za pomocą komend git push oraz git pull. Spóbujmy wysłać pliki do naszego zdalnego repozytorium:

Jako pierwszy argument podajemy nazwę zdalnego repozytorium, jako drugi lokalny branch, który ma być wysłany.

W ten sposób umieściliśmy nasz projekt w zdalnym repozytorium.

Klonowanie repozytorium

Teraz gdy nasze pliki znajdują się w zdalnym repozytorium możemy je w prosty sposób sklonować (np. dla nowego członka zespołu pracującego nad projektem).

„origin” jest domyślną nazwa nadawaną dla zdalnego repozytorium. Zauważmy, że po klonowaniu w naszym projekcie jest ustawione zdalne repozytorium (to z którego klonowaliśmy pliki) – nie musimy tego robić ręcznie.

Praca ze zdalnym repozytorium

Sprawdźmy jeszcze jeden ciekawy scenariusz – jeden z programistów zakłada własny projekt od zera i synchronizuje go z naszym zdalnym repozytorium.

Co zrobiłem? Utworzyłem nowy katalog, dodałem go do kontroli wersji (‚init’) ustawiłem zdalne (dobrze nam znane :) ) repozytorium. Następnie dodałem plik i skommitowałem go do lokalnego repozytorium.
Teraz musimy wysłać naszego brancha na serwer. Po nazwie lokalnego musimy podać nazwę pod jaką nasz branch będzie widniał w zdalnym repozytorium (po dwukropku)

Teraz przełączmy się do folderu z którego rozpoczęliśmy pracę

Widać, że zdalny branch jest widoczny – jednak w jaki sposób się na niego ‚przełączyć’? Najpierw musimy zaktualizować nasz mirror zdalnego repozytorium:

aktualnie skopiowaliśmy zdalny fajny projekt do lokalnego repozytorium.
Można go zobaczyć na liście branchy

Jeżeli teraz chcemy dokonać zmian na tym zdalnym repozytorium musimy utworzyć lokalnego brancha, który będzie śledził (tracking) ten zdalny.

Utworzono lokalny branch pod nazwą ‚fajny_projekt’ ze zdalnego ‚centrala/fajny_projekt’ i od razu zaznaczono go jako aktywny sprawdźmy:

Mam nadzieję, że wszystko jest zrozumiałe, jest późno – a o tej godzinie to czasami sam nie do końca wiem co piszę :). W razie nieścisłości proszę o słówko w komentarzach.
.