Lista Git z plikami tymczasowymi


112

Przygotowałem wiele plików za pomocą git add, teraz chcę zobaczyć wszystkie pliki, które wystawiłem, bez plików nieśledzonych lub zmienionych, ale niestacjonarnych .

W jaki sposób mogę to zrobić? Używając git diff --cached, widzę zmiany w tym, co właśnie wystawiłem. Więc spróbowałem użyć, git status --cachedale to --cachedniestety nie działa git status.


4
proste wpisanie git statusdaje listę plików przygotowanych, listę zmodyfikowanych, ale niestabilnych plików oraz listę plików, które nie są śledzone.
houtanb


@houtanb, git statuspokazuje różnicę . (Nie pokazuje wszystkich przygotowanych plików).
Pacerier

Odpowiedzi:


199

Najlepszym sposobem na to jest uruchomienie polecenia:

git diff --name-only --cached

Po przejrzeniu instrukcji prawdopodobnie znajdziesz:

--name-only
    Show only names of changed files.

A na przykładowej części instrukcji:

git diff --cached
    Changes between the index and your last commit.

W połączeniu otrzymujesz changes between the index and your last commitiShow only names of changed files.

Aktualizacja: --stagedjest również dostępna jako alias --cachedpowyżej w nowszych wersjach git.


13
Jest to bardzo przydatne, ponieważ pozwala uzyskać listę nazw plików, które możesz następnie (w moim przypadku) przesłać do lintera w haku przed zatwierdzeniem.
morsa

5
Jeśli dodajesz pliki za pomocą git add -N [files], obejmuje to również te, nawet jeśli nie są one jeszcze przygotowane do zatwierdzenia. W związku z tym nie jest to dokładnie to, czego oczekujemy od punktu zaczepienia przed zatwierdzeniem.
Pistos

ponownie „ ostatnie zatwierdzenie ”; Zwodniczy. Lepiej powiedzieć, że git diff --cachedjest skrótemgit diff --cached head
Pacerier
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.