2016-07-29 20 views
1

Wie kann ich einige meiner Git Stashes gleichzeitig löschen? Ich habe versucht, in SourceTree, aber es scheint, dass ich nur einen Stash nach dem anderen löschen kann. Kann ich mehrere von ihnen gleichzeitig löschen? Gibt es einen Befehl, dies in git bash zu tun? Ich möchte nicht alle löschen.So löschen Sie Stapel als Stapel?

Antwort

3

Mit Bash Brace Expansion, können wir eine lange Liste von stashes schnell erstellen, zB [email protected]{8} [email protected]{7} [email protected]{6} [email protected]{5} [email protected]{3} [email protected]{1}

mit echo [email protected]\{{8..5}\} [email protected]\{{3,1}\}

Putting zusammen mit xargs oder eine for Schleife gemacht werden, erhalten wir:

echo [email protected]\{{8..5}\} [email protected]\{{3,1}\} | xargs -rn1 git stash drop 

Hinweis: Die Liste muss umgekehrt werden.

1

sollte dies tun:

echo -e '[email protected]{6}\[email protected]{3}\nstash' | xargs -rl git stash drop 

Aber stellen Sie sicher, „Countdown“, wie die Befehle nacheinander ausgeführt werden, und wenn Sie die numerische Referenz wie in meinem Beispiel nach jedem der Indizes Befehl verwenden würde verschieben Also fang mit dem Ältesten an. Oder verwenden Sie natürlich den Namen, den Sie beim Speichern angegeben haben.