2017-02-13 4 views
1

Angenommen, ich habe einige Zweige mit Namen mit inactive- beginnen. Wie ihre Namen vermuten lassen, sind diese Zweige inaktiv; Ich halte mich zu Archivierungszwecken auf.Sagen gitk Alle Branchen zu ignorieren, die Muster passen

Ich möchte gitk sagen, diese Zweige zu ignorieren, auch wenn ich auch die --all Flagge übergeben. Gibt es eine Möglichkeit, dies zu tun? Diejenigen, deren Alle Branchen außer enthalten Namen übereinstimmt inactive-*

Alternativ gibt es eine andere bequeme Weise gitk zu erzählen?


P.S. Ich habe versucht

gitk --branches='!inactive-*' 

... und Variationen davon, aber keine funktionierte.

+0

Verwandte: http://stackoverflow.com/questions/20977520/is-there-any- way-to-exclude-branches-from-show-in-gitk –

+1

Eine Problemumgehung, die ich mir vorstellen kann, ist, einen Klon des Repositorys zu erstellen, in dem die inaktiven Zweige gespeichert sind, und sie im "aktiven" Repository zu löschen. – mkrieger1

Antwort

1

Nein, es gibt keine wirklich bequeme Möglichkeit, dies zu tun.

Hier ist eine etwas unbequeme Art und Weise ein ähnliches Ergebnis zu „--all Ausnahme invalid-*“ zu erreichen:

gitk $(git for-each-ref --format="%(refname:short)" refs/heads | grep -v '^inactive-') 

Das heißt, wir git for-each-ref verwenden, um alle Zweignamen (alles in refs/heads/*) zu finden, verwenden Sie dann grep -v zu Verwerfen Sie diejenigen, deren Name mit inactive- beginnt. Die resultierende Liste ist die Menge der Argumente zu gitk.

(Sie könnten gitk ändern diese ziemlich leicht zu tun, da gitk nur ein gigantisches Skript Tcl/Tk.)