Czy masz swój katalog git pełen nieśledzonych plików i zaczyna ci to przeszkadzać kiedy wybierasz zmiany do zatwierdzenia? Cóż, mam dla ciebie dwie rady!
git clean
To jest wbudowana komenda do czyszczenia nieśledzonych plików. Bądź ostrożny z tym, usuwa pliki na stałe!
Zawsze dodawaj opcje -n
lub --dry-run
, aby zobaczyć, jakie szkody wyrządzisz! (źródło)
- Jeśli chcesz tylko wyczyścić pliki nieśledzone, uruchom
git clean -f
- Jeśli chcesz również usunąć katalogi, uruchom
git clean -f -d
- Jeśli chcesz tylko usunąć ignorowane pliki, uruchom
git clean -f -X
- Jeśli chcesz usunąć zarówno ignorowane jak i nieignorowane pliki, uruchom
git clean -f -x
Zauważ, że w każdym przykładzie jest opcja -f
/ --force
, jest to spowodowane domyślną konfiguracją git: Jeśli zmienna konfiguracyjna git clean.requireForce nie jest ustawiona na false, git clean odmówi uruchomienia, chyba że podano -f lub -n.
git trash
Miękka alternatywa dla git clean. Przenosi wszystkie niestage’owane pliki do katalogu .trash do późniejszego przejrzenia.
Po pierwsze, aby to polecenie działało, musisz dodać katalog .trash
do lokalnego lub globalnego .gitignore
. Jeśli tego nie zrobisz git trash
będzie próbował usunąć katalog .trash
również.
echo ".trash" >> .gitignore
Teraz dodaj skrót trash
git do swojej globalnej listy aliasów:
git config --global alias.trash '!mkdir -p .trash && git ls-files --others --exclude-standard | xargs mv -f -t .trash'
I gotowe. Teraz możesz uruchomić git trash
w swoim korzeniu repozytorium git, a wszystkie niestage’owane pliki zostaną przeniesione do podkatalogu .trash
.
Related protips:
Usuń wszystkie swoje lokalne gałęzie git, ale zachowaj master
.