Polecenie git log --name-status: Jak efektywnie śledzić zmiany w repozytorium Git
Git to jedno z najpopularniejszych narzędzi do zarządzania wersjami, a jego polecenia umożliwiają nie tylko kontrolowanie kodu, ale i efektywne śledzenie historii zmian w projekcie. Jednym z takich pomocnych poleceń jest git log --name-status, które pozwala na wygodne wyświetlanie szczegółów dotyczących zmodyfikowanych plików w ramach commitów. Jeśli chcesz poznać jego działanie i zastosowanie, to świetnie trafiłeś! Dzisiaj przyjrzymy się temu poleceniu w praktyce.
Co to jest polecenie git log --name-status?
W Git, git log to jedno z podstawowych poleceń do przeglądania historii commitów. Jeśli chcesz zobaczyć szczegółowe informacje o tym, co zostało zmienione w repozytorium, ale w bardziej przystępnej formie niż tylko lista commitów, możesz skorzystać z opcji --name-status.
To polecenie umożliwia wyświetlenie listy wszystkich plików, które zostały zmodyfikowane w ramach commitów, razem z informacją o statusie tych zmian (np. dodanie, modyfikacja, usunięcie). Dzięki temu możesz szybko sprawdzić, które pliki były zmieniane, co jest niezwykle przydatne, szczególnie w większych projektach, gdzie wiele osób pracuje nad tym samym repozytorium.
Jak działa polecenie git log --name-status?
Domyślnie polecenie git log pokazuje historię commitów w repozytorium. Gdy dodamy do niego opcję --name-status, Git wyświetli nie tylko standardową historię commitów, ale także statusy plików, które zostały zmienione w każdym z commitów. Statusy te mogą przyjmować jedną z trzech form:
- A: Nowy plik (Add)
- M: Zmodyfikowany plik (Modify)
- D: Usunięty plik (Delete)
Takie szczegółowe informacje pozwalają na dokładne śledzenie, co dokładnie zostało zmienione w repozytorium i jakie pliki zostały dodane, zmodyfikowane lub usunięte. Jest to przydatne w wielu przypadkach, na przykład w procesie przeglądu kodu, audytu czy debugowania projektu.
Podstawowa składnia polecenia git log --name-status
Składnia polecenia git log --name-status jest bardzo prosta i wygląda następująco:
git log --name-status
Po jej wykonaniu Git wyświetli historię commitów, w której obok każdego wpisu znajdziesz również listę zmodyfikowanych plików i ich statusy. Jeśli chcesz dostosować wyniki wyświetlania, możesz dodać inne opcje do polecenia, aby jeszcze dokładniej przefiltrować wyniki.
Przykłady użycia polecenia git log --name-status
Aby lepiej zrozumieć, jak działa git log --name-status, warto przyjrzeć się kilku praktycznym przykładom. Oto kilka scenariuszy, które mogą Ci się przydać:
1. Wyświetlenie historii commitów z pełnymi informacjami o statusie plików
Załóżmy, że chcesz zobaczyć historię commitów w swoim repozytorium razem z informacjami o tym, które pliki zostały zmodyfikowane, dodane lub usunięte. Użyj następującego polecenia:
git log --name-status
Wynik tego polecenia może wyglądać mniej więcej tak:
commit 4f7b8a2a9df4b4c8c9e8b1abde96752a5b772d52 Author: Jan KowalskiDate: Fri Mar 5 14:22:10 2025 +0100 Poprawka błędu w funkcji obliczającej średnią M src/stats.py A docs/stats_summary.md commit 7c34c9e0e27a4b58d9f5c0e960c4ff2d492ec540 Author: Anna Nowak Date: Fri Mar 4 09:13:45 2025 +0100 Dodanie nowej funkcji logowania A src/logger.py D src/old_logger.py
Jak widzisz, Git pokazuje, które pliki zostały zmodyfikowane (M), które zostały dodane (A), a które usunięte (D). Dzięki temu masz pełen obraz zmian w projekcie.
2. Ograniczenie liczby wyświetlanych commitów
Czasem chcesz zobaczyć tylko kilka ostatnich commitów. Możesz ograniczyć liczbę wyświetlanych commitów za pomocą opcji -n. Na przykład, jeśli chcesz zobaczyć tylko ostatnie 3 commity, użyj:
git log -n 3 --name-status
Wynik tego polecenia to lista tylko trzech ostatnich commitów z informacjami o zmienionych plikach. Jest to przydatne, gdy chcesz skupić się na najnowszych zmianach w projekcie.
3. Wyświetlanie historii commitów dla określonego pliku
Jeśli chcesz śledzić zmiany tylko w jednym pliku, możesz użyć polecenia git log z nazwą pliku. Na przykład, aby zobaczyć historię zmian dla pliku src/stats.py, użyj:
git log --name-status src/stats.py
Wynik tego polecenia pokaże historię commitów tylko dla pliku stats.py, dzięki czemu łatwo będziesz mógł śledzić jego ewolucję w czasie.
4. Filtrowanie commitów po dacie
Czasami chcesz zobaczyć tylko te commity, które zostały wykonane po określonej dacie. Możesz użyć opcji --since, aby to zrobić. Na przykład, aby zobaczyć tylko commity, które zostały wprowadzone po 1 marca 2025 roku, użyj:
git log --name-status --since="2025-03-01"
To polecenie wyświetli wszystkie commity w repozytorium, które zostały dokonane po określonej dacie, wraz z informacjami o zmodyfikowanych plikach.
Dlaczego warto używać git log --name-status?
Użycie polecenia git log --name-status ma wiele zalet, które znacząco poprawiają Twoją efektywność pracy z repozytoriami Git:
- Śledzenie zmian: Dzięki szczegółowym informacjom o statusie plików, łatwiej śledzisz, co dokładnie zostało zmienione w repozytorium.
- Prosta analiza: Zamiast przeszukiwać długą historię commitów, otrzymujesz przejrzysty raport o tym, które pliki zostały zmodyfikowane w każdym z commitów.
- Pomoc w debugowaniu: Jeśli coś poszło nie tak, łatwiej jest prześledzić zmiany w kodzie i sprawdzić, który commit spowodował problem.
- Audyt i przegląd kodu: To narzędzie jest niezwykle przydatne w procesie przeglądu kodu, gdzie chcesz szybko zobaczyć, jakie zmiany zostały wprowadzone w projekcie.
Podsumowanie
Polecenie git log --name-status to niezwykle użyteczne narzędzie do śledzenia historii commitów w repozytorium Git. Dzięki temu prostemu poleceniu możesz uzyskać szybki wgląd w to, które pliki zostały zmodyfikowane, dodane lub usunięte, co znacznie ułatwia pracę nad projektem, szczególnie w większych zespołach. Dzięki przykładom, które przedstawiłem w tym artykule, masz już podstawy, by w pełni wykorzystać potencjał tego polecenia w swojej codziennej pracy z Gitem. Powodzenia i miłego kodowania!

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!