Wysyłanie plików do repozytorium i tworzenie gałęzi

W tym artykule chcę pokazać podstawowe operacje na temat wrzucania plików do repozytorium a także tworzenia gałęzi. Tak wiec zaczynamy…

Czym jest gałąź? Dowiedzieć się można tego z tej strony:

http://progit.org/book/pl/ch3-1.html

Jeśli jednak ktoś nie ma zamiaru czytać długich tekstów to wyobraźmy sobie taką sytuację:

Piszemy program, którego pliki znajdują się w repozytorium. Ściągamy je na dysk i pracujemy na gałęzi master (główny trzon, coś jak pień drzewa). Chcemy teraz wprowadzić drastyczne zmiany w kodzie lub dodać nowy komponent ryzykując niepowodzeniem.

Co możemy zrobić w tej sytuacji? Pierwsza nasza myśl – kopię. Myśl bardzo dobra. W takim razie utwórzmy sobie taką kopię, na której będziemy pracować. Z pomocą przychodzą nam właśnie gałęzie (branches). Gałąź jest to taka jakby kopia, na której możemy pracować bez ryzyka utraty i ryzyka na gałęzi głównej (master). Taka gałąź zachowuje się tak samo jak gałąź główna jednak nie wpływa ona na master’a , dopóki nie wykonamy połączenia (merge) lub nie wrzucimy naszej nowej gałęzi jako master.

To tyle teorii jeśli chodzi o gałęzie.

Zanim zaczniemy pracować na gałęziach czy w ogóle z repozytorium musimy do niego wrzucić nasz projekt. Po utworzeniu nowego repozytorium i zsynchronizowaniu go przechodzimy do folderu, na którym będziemy pracować. Dla celów tego artykułu będziemy pracować na jednym pliku tekstowym. W takim razie utwórzmy go.

 

2011-03-04_105002.png

 

Po utworzeniu do i wypełnieniu dowolną treścią (niekoniecznie) zacommitujmy go.

2011-03-04_105029.png

Teraz w nowym oknie zaznaczamy pliki, które mają być zacommitoane (jak widać nowy plik jest „Unknown”. Aby więcej dowiedzieć się o cyklu życiowym plików w repozytorium polecam ten rozdział: http://progit.org/book/pl/ch2-2.html). Należy także dodać wiadomość / komentarz. Dzięki temu my i nasi współtwórcy projektu będą wiedzieć jakie zmiany zostały wprowadzone. Klikamy na przycisk ok i rozpoczyna się commitowanie.

 

2011-03-04_105116.png

Wersja tego pliku została utworzona w repozytorium ale tylko lokalnym! Aby wysłać ją na serwer klikamy na przycisk Push.

 

2011-03-04_105130.png

Powyższe okienko pozawala na wrzucanie plików z poszczególnych gałęzi. Jednak na początek nic tutaj nie będziemy przestawiać. Klikamy ok i rozpocznie się wysyłanie plików na serwer.

 

2011-03-04_105442.png

Jeśli otrzymaliśmy wynik SUCCESS tzn, że pliki zostały poprawnie wysłane do repozytorium.

Teraz zajmiemy się pracą na gałęziach. W tym celu należy najpierw utworzyć ją w lokalnym repozytorium. W związku z tym klikamy w folderze Prawy Przycisk Myszy najeżdżamy na TortoiseGit i wybieramy Create branch.

 

2011-03-04_105511.png

Następnie wpisujemy nazwę nowej gałęzi. W opcjach możemy wybrać od jakiej wcześniejszej ma odchodzić, jednak teraz wystarczy nam, aby była pochodną od master.

 

2011-03-04_105523.png

Klikamy ok. Gałąź została utworzona. Następnie należy się przełączyć na nowo utworzoną gałąź wybierając opcję Switch/Checkout.

 

2011-03-04_105612.png

Następnie z rozwijalnego menu wybieramy, na którą gałąź mamy się przełączyć.

2011-03-04_105635.png

Klikamy ok i następuje przełączanie.

2011-03-04_105644.png

Możemy się upewnić, czy zostaliśmy przełączani na odpowiednią gałąź klikając Prawy Przycisk Myszy. Jeśli widzimy GitCommit -> „nazwa_wybranej_gałęzi” tzn, że pracujemy na właściwej gałęzi.

2011-03-04_105711.png

Podsumowanie, pokazane tutaj przykłady są to najprostsze operacje mające na celu tylko pokazać zalążek pracy z tym systemem. Aby bardziej wdrożyć się w działaniu na gałęziach należy poczytać artykuły w internecie lub na podanych wcześniej stronach, które doskonale pokazują działanie od strony teoretycznej. Jednak nic nie zastąpi ćwiczeń praktycznych, dlatego warto założyć sobie jakieś testowe repozytorium i na nim ćwiczyć i eksperymentować :)