Jak mogę usunąć wszystkie moje skrytki Git jednocześnie?
Mówiąc konkretnie, wpisując jedno polecenie.
Następujące polecenie usuwa wszystkie skrytki:
git stash clear
Z dokumentacji git :
clear
Usuń wszystkie ukryte stany.
WAŻNE OSTRZEŻENIE: Stany te będą wówczas podlegać przycinaniu i ich odzyskanie może być niemożliwe (...).
stash drop
(” Usuń pojedynczy stan ukryty z listy stash Kiedy nie <zapas> jest podana, to usuwa ostatnią jeden (...).. «) nie odpowiedzieć na pytanie (» Jak mogę usunąć wszystko z moje skrypty Git naraz? ”)?git stash clear
aby potwierdzić, czy wszystko zostało wyczyszczone, użyj -git stash list
git
jest praktycznie niemożliwa do znalezienia! git-scm.com/docs/git-stashgit help <command>
to najlepszy sposób na uzyskanie dokumentacji (i jest całkiem niezły). W tym przypadkugit help stash
wyraźnie pokaż, żegit stash clear
tak się dzieje (nie powstrzymało mnie to od pierwszego przyjścia do SO i poprawienia odpowiedzi ... ale to mówi o mnie więcej niżgit
: D)Istnieją dwa sposoby usunięcia skrytki:
$ git stash drop <stash_id>
.$ git stash clear
.Używaj obu z nich ostrożnie, może być trudno przywrócić usunięte skrytki.
Oto artykuł referencyjny .
źródło
to polecenie umożliwia przeglądanie wszystkich ukrytych zmian.
Oto następujące polecenie: użyj go, aby usunąć wszystkie ukryte zmiany
Teraz, jeśli chcesz usunąć jedną z ukrytych zmian z obszaru ukrytego
źródło
git stash drop 'stash@{index}'
z apostrofami.Chciałem zachować kilka ostatnich skrytek, ale usunę wszystko inne.
Poniewa wszystkie skrytki zostają przenumerowane po upuszczeniu, w rzeczywistości jest to łatwe do wykonania. Aby usunąć wszystkie skrytki starsze niż skrytka @ {19}:
źródło
git stash pop 3
zamiast tego można odwołać się do 3. skrytki z listy skrytek ? Chciałem wiedzieć, czy możemy używaćwhile
pętli i upuszczać skrytki za pomocą wartości indeksu.Miałem inne wymaganie, jak tylko kilka skrytek musi zostać usuniętych, w takim przypadku pomocny byłby kod poniżej.
/ * usunie indeks od 5 do 8 * /
źródło
for iterator in `seq 5 8`; git stash drop stash@{$iterator}; done
for i in `seq 4`; do git stash drop 'stash@{5}'; done
do
git stash drop type_your_index
Ostrzeżenie : po zakończeniu nie możesz przywrócić swojej skrytki
źródło
Aby usunąć wszystkie skrytki starsze niż 40 dni, użyj:
Dodaj,
--dry-run
aby zobaczyć, które skrytki są usuwane.Zobacz https://stackoverflow.com/a/44829516/946850, aby uzyskać wyjaśnienie i wiele więcej szczegółów.
źródło