Porównanie commitów między branchami – git show-branch

Jeśli pracujecie z kilkoma branchami, można czasami się trochę pogubić. Gdzie to skomitowaliśmy? Czy zrobiliśmy merge’a na odpowiedni branch? Aby porównać dwa branche można skorzystać z jakiejś aplikacji z GUI do obsługi gita np. SourceTree. Aplikacja ładnie wizualizuje nasze branche, jednak albo pokazuje jeden, albo wszystkie. Co zrobić jak chcemy porównać commity między dwoma konkretnymi branchami? Z pomocą przychodzi Nam polecenie git show-branch. (więcej…)

Bezpieczne (prawie zawsze) nadpisywanie zmian – git push –force-with-lease

Ostatnio w pracy miałem sytuację, że w commit message wpisałem zły numer taska z Azure DevOps (dawne Visual Studio Team Services). Przez to mój commit został połączony z nieprawidłowym zadaniem. Wiedziałem, że wszystko da się odkręcić przepinając w portalu na inny task. Jednak nie chciałem zostawić tego commit message ze złym numerem taska. Zauważyłem to od razu, więc również szybko zacząłem szukać czy mogę to poprawić na branchu zdalnym.

Zdawałem sobie sprawę, że mogę użyć git push --force i to na pewno zadziała, ale dodatkowo chciałem być pewien, że nic nie zepsuję. Wtedy przypomniało mi się, że w PDFie od Macieja Aniserowicza “10 Sekretnych Komend Gita, O Których Nie Masz Pojęcia” było chyba coś takiego opisanego. (więcej…)

Rebase podczas synchronizacji repozytorium – polecenie git pull –rebase

Wszystkie zmiany w kodzie, które robimy lokalnie w jakimś momencie musimy wrzucić do zdalnego repozytorium. Git nie pozwoli Nam wrzucić swoich zmian, jeśli nie mamy zsynchronizowanego repozytorium. Przed wrzuceniem naszej pracy musimy ściągnąć ostatnie commity wrzucone przez innych. Do ściągnięcia najnowszej wersji repozytorium służy polecenie git pull – o tym na pewno wszyscy wiedzą.

Jednak jak ono naprawdę działa? (więcej…)

Jak sformatowatować log według własnych preferencji – opcja pretty

Polecenie git log zna każdy użytkownik gita. Jest ono jednym z pierwszych, które poznajemy ucząc się tego systemu kontroli wersji. Pokazuje ono listę naszych commitów. W tym wpisie chciałem przedstawić jak można sformatować wygląd loga w dowolnym sposób jaki tylko chcemy. Log może pokazywać tylko te informacje, które są Nam naprawdę potrzebne.

(więcej…)

Jak szybko zrobić porządek w projekcie – polecenie git clean

Czasem zdarza mi się, że dodam do projektu jakiś plik i zanim wrzucę go do repozytorium, to on jednak okazuje się niepotrzebny. Do tej pory usuwałem ten plik ręcznie, albo w Eksploratorze Windows albo wpisując komendę:

rm <ścieżka do pliku>

gdzie z racji tego, że projekt jest spory, to ścieżka do pliku zawiera w sobie kilka folderów. Jest jednak lepsze rozwiązanie.

(więcej…)