Od tego czasu sporo się zmieniło. I nie mam tu na myśli tego, że teraz sama przechodzę na "ciemną stronę mocy". ;) To, o co mi chodzi, to niewątpliwe zbliżenie obu tych światów, jakie się dokonało, a które miałam okazję obserwować, jednocześnie w nim uczestnicząc. Spora w tym pewnie zasługa metodyki Scrum, która zawojowała rynek i, mówiąc bardzo oględnie, ucywilizowała zasady współpracy na linii biznes-technologia. Ale też pewnie po prostu znak (i wymóg) czasu. Trzeba się orientować w coraz bardziej stechnologizowanym świecie, a pracując w pewnych branżach (np. w marketingu) - trzeba bardziej niż w innych.
Ale nie o tym miał być ten post. Choć tak przyjemnie osuwać się w dygresje. :)
Wracając do meritum:
Przy okazji dodawania spinnera (o czym więcej tutaj) udało mi się przećwiczyć pracę na branchu i robienie stasha. Czyli plus dziesięć do lansu, jeśli chodzi o Gita. ;)
Nowa gałąź (czyli właśnie branch) - w sumie nic bardzo trudnego, już to kiedyś robiłam. Dla porządku - kilka przydatnych komend branchowych:
- git branch nazwa_brancha
utwórz nowy branch - git checkout nazwa_brancha
przełącz się na innego brancha - git checkout -b nazwa_brancha
dwa powyższe w jednym, czyli: utwórz nowy branch i przełącz się na niego - git branch -m stara_nazwa nowa_nazwa
zmień nazwę brancha - git branch -d nazwa_brancha
usuń lokalny branch - git push origin --delete zdalny_branch
usuń zdalny branch - git merge nazwa_brancha
włącz/dołącz commity z innego brancha w aktualnym branchu (tym, na którym jesteś) - git branch
wyświetl listę lokalnych branchy - git branch -a
wyświetl listę wszystkich branchy - git push
wyślij zmiany lokalne (ze wszystkich zmodyfikowanych gałęzi) do zdalnego repo - git push origin nazwa_brancha
wyślij zmiany lokalne z gałęzi o danej nazwie do odpowiedniej gałęzi w zdalnym repo - git push origin nazwa_brancha -u LUB git push --set-upstream origin nazwa_brancha
wyślij zmiany, jednocześnie tworząc tzw. upstream, czyli dowiązanie między branchem lokalnym i zdalnym; tę komendę należy wykonać przed pierwszym pushem z nowo utworzonej lokalnej gałęzi, o ile nie istnieje dla niej remote/origin, czyli odpowiednia gałąź w zdalnym repo (bez tej komendy push nie będzie możliwy)
Jeśli zaś chodzi o stasha, to był dziewiczy rejs. ;) Stash to jakby schowanie "w worku na boku" niezakomitowanych zmian, do których można potem wrócić (wprowadzając je znów do przestrzeni roboczej) lub - jeśli uznamy je za niepotrzebne - które można szybko usunąć. Na poziomie komend mamy tutaj:
- git stash
stwórz nowy stash z generyczną nazwą, np.stash@{0}
- git stash save nazwa_stasha
stwórz nowy stash o określonej nazwie - git stash lista
wyświetl listę stashy - git stash show -p nazwa_stasha
wyświetl zmiany w stashu (taki jakbygit diff
, tylko że na stashu) - git stash drop nazwa_stasha
usuń stash o danej nazwie - git stash apply nazwa_stasha
zaaplikuj zmiany ze stasha o danej nazwie
Gdyby wgryźć się w temat, znalazłoby się tego pewnie jeszcze trochę. Jednak myślę, że na tym etapie tyle wystarczy, aby nie dostać zawrotu głowy. ;) Lepsze jest wrogiem dobrego.
Hohoho ... mocny lans :) W moich oczach +1000 ;)
OdpowiedzUsuńNo ba! Grunt to mieć do siebie dystans. :)
OdpowiedzUsuń