Git #10: Gitk – historia w okienku

Git #10: Gitk, czyli przeglądanie historii w okienku

Poziom trudności
1.5/5

W poprzednim artykule:

przedstawiliśmy sposoby na przeglądanie historii naszego projektu, z wykorzystaniem konsoli oraz wbudowanych w git’a narzędzi. Forma prezentacji tej historii, lub sposób jej przeszukiwania i obsługi może nie wszystkim odpowiadać. Z pomocą mogą nam przyjść dodatkowe, zewnętrzne narzędzia, dzięki którym będziemy w stanie prześledzić zmiany.

Gitk

Jednym z polecanych przeze mnie narzędzi jest Gitk — czyli prosta, a zarazem użyteczna aplikacja. W pierwszej kolejności należy zacząć oczywiście od zainstalowania jej poprzez:

qabrio@test:~$ sudo apt install gitk

Po procesie instalacji, możemy rozpocząć korzystanie z gitk. Nie jest wymagana żadna wstępna konfiguracja. Narzędzie to będzie działało poprawnie z każdym projektem obsługiwanym przez system kontroli wersji — Git. Zatem przejdźmy do projektu z poprzedniej części i wykonajmy polecenie:

qabrio@test:~/__tmp/git_test$ gitk --all

Efektem wykonania tej komendy powinno być poniższe okno. Dzięki użyciu parametru –all, zostaną wyświetlone wszystkie informacje.

Git #10: Gitk   historia w okienku image

W wyświetlonym oknie możemy zobaczyć następujące informacje:
1. Widok drzewa commit‚ów w projekcie z podziałem na banch‚e.
2. Informacje o autorze każdego commit‚a.
3. Informacje o dacie dotyczące każdego commit‚a.
4. ID podświetlonego commit‚a.
5. Szczegóły dotyczące wybranego commita, w tym informacje o autorze, dacie, a także commitcie nadrzędnym (parent), commit‚ach bazujących na tym commitcie (children), branch‚ach oraz opis wybranego commit’a.
6. Wykaz zmian w każdym pliku w obrębie commit’a: linie dodane na zielono, a linie usunięte na czerwono.
7. Wyszukiwarka wewnątrz wybranego commit‚a.
8. Przechodzenie pomiędzy kolejnymi commit‚ami.
9.
Wyszukiwarka commit’ów (opisana kilka akapitów niżej).

Aby wyświetlić historię jednego lub wielu plików należy je wypisać po nazwie narzędzia, np.: 

qabrio@test:~/workspace/git_test$ gitk test_file_5 test_file_4

Wybrane parametry

select-commit=[ID commit‚a] – wybór konkretnego commit‚a, który spowoduje otwarcie standardowego okna aplikacji, w której od razu będzie zaznaczony podany commit:

qabrio@test:~/workspace/git_test$ gitk --select-commit=1c20681c48cf189d5a0088c7992096e5f5f7b5bb

–max-count=[liczba] – ograniczenie liczby wyświetlonych commit’ów do liczby podanej w parametrze:

qabrio@test:~/workspace/git_test$ gitk --max-count=2

since — wyświetlanie commit‚ów od czasu podanego w parametrze. Wartość ta może być podana zarówno słownie jako na przykład ‚2 weeks ago’ lub jako data w formacie DD-MM-YYYY:

qabrio@test:~/workspace/git_test$ gitk --since="1 day ago"

–until — wyświetlanie commit’ów od czasu podanego w parametrze do chwili obecnej. Wartości mogą być podane w analogiczny sposób jak w –since:

qabrio@test:~/workspace/git_test$ gitk --until=27-01-2020

date-order posortowania commit‚ów po dacie. Jak wiemy, w git’cie można wykonać kilka commit‚ów lokalnie, a dopiero po jakimś czasie wykonać push, w celu wysłania ich na serwer. Jeśli ktoś inny wykonał później od nas commit’a, a wcześniej wysłał na serwer, daty nie commit‚ów nie będą ustalone chronologicznie. Jeśli mimo wszystko zależy nam, aby chronologia względem dat commit‚ów była zachowana, można użyć poniższego parametru:

qabrio@test:~/workspace/git_test$ gitk --date-order

Wbudowana wyszukiwarka

Narzędzie to posiada także wbudowaną wyszukiwarkę, oznaczoną na screenie punktem nr 9. Umożliwia ona przeszukiwania commit‚ów pod kątem autora, podsumowania, komentarz lub po wszystkich polach an raz. Na poniższym zrzucie ekranu została wyszukana fraza test_1. Wszystkie znalezione przypasowania zostały pogrubione w górnej części okna.

Git #10: Gitk   historia w okienku image

Jak widać, dzięki graficznemu interfejsowi, przeglądanie historii w git’cie stało się bardzo łatwe i szybkie. W stosunku do opcji konsolowej czytelność jest również lepsza. Znam osoby, które bez GUI w git’cie nie mogłyby żyć, a z drugiej strony znam osoby, dla których konsola jest wszystkim. Dlatego ostateczny wybór narzędzia zależy głównie od osobistych preferencji i przyzwyczajeń.

Git #10: Gitk   historia w okienku image

Dodaj komentarz