Delorean

git filter-repo – co to jest + praktyczny przykład

Jeśli próbowałeś kiedyś zrobić naraz większe zmiany w historii swojego projektu np. usunąć jakieś pliki z commitów lub usunąć hasła z kodu, to pewnie natknąłeś się na narzędzie git filter-branch. Do czego jest git filter-repo? Do tego samego 🙂

Jak jest do tego samego, to po co o tym piszę…. ? Ponieważ teraz ludzie tworzący gita zalecają używanie filter-repo, dodatkowo jest łatwiejsze w użyciu i co ważniejsze – wydajniejsze.

(więcej…)

Jak zrobić porządek z branchami

Wyświetlasz listę branchy i nie wiesz co się dzieje. Ponad 10 branchy na liście. Czytasz ich nazwy i nie przychodzi Ci do głowy żadne skojarzenie z czym to może być związane. Zastanawiasz się: “Czy to na pewno moje branche?” 🙂 Może ktoś mi je podrzucił 😛 Przechodzisz na nie, patrzysz na ostatnie commity i jak byk widać, że to Twoje. Sprzed 2 miesięcy i dotyczą zadania, które dawno jest już na produkcji.

Też masz takie sytuacje? W tym wpisie pokażę Ci jak zrobić porządek w branchach.

(więcej…)

Jak skopiować tylko niektóre commity z feature brancha do mastera? – polecenie git cherry-pick

Czy zdarzyła Ci się kiedyś taka sytuacja, że siedzisz sobie spokojnie w biurze, poprawiasz różne bugi w projekcie, dodajesz nowe funkcjonalności. Nagle, wchodzi Twój Szef / kierownik / project manager / ktoś inny (niepotrzebne skreślić 🙂 ) i mówi, że zaraz wydajemy wersję i chcemy w niej mieć poprawione bugi X, Y, Z oraz ten feature A.

Okazuje się, że masz to zrobione, ale znajduje się to na Twoim branchu wraz z innymi rzeczami, których jeszcze nie skończyłeś. Co robić? No otwierasz IDE i kopiujesz niezbędny kod na brancha produkcyjnego (develop lub master) i już 🙂 Skopiowanie jest w miarę szybkie, ale jeszcze musisz sprawdzić czy na pewno wszystko skopiowałeś, czy coś nie zostało.
Zajmuje Ci to ok. 30 minut. Wszystko działa, wersja może zostać wystawiona.

Jednak da się to zrobić w sposób szybszy i dużo łatwiejszy. Jak? Polecenie git cherry-pick nam pomoże.

(więcej…)