2012-04-10 6 views

Antwort

-2

Nach einigem Experimentieren habe ich eine Lösung gefunden. Der folgende Befehl funktioniert:

echo $(git branch) | gitk 

Es zeigt nur die Remote-Zweige, die entsprechende lokale Zweige haben. Es ist wichtig, echo $(git branch) zu verwenden, da es branch zwingt rohe Liste der Filialen statt formatierten Ausgabe wie die folgenden zurück:

$ git branch 
    develop 
    release-M4.1 
    vendor 
* xflow 
+0

Versuchen Sie, nur laufen 'echo $ (git branch)'; Sie sollten auch alle Dateien in Ihrem aktuellen Verzeichnis sehen, aufgrund des Sternchens in der Ausgabe von git branch. – chepner

+0

Ich habe speziell Echo verwendet, um gits Sternchen zu verstecken. Ich glaube, Git ist in der Lage zu erkennen, wenn es als Teil von "Echo" ausgeführt wird oder nicht. Es wird kein Stern aus dem Echo gedruckt. –

+2

Dies scheint Shell-abhängig zu sein und nicht irgendetwas mit 'git' zu tun zu haben. Ich sehe das '*' in Dateinamen erweitert, wenn ich es in 'bash' oder' ksh' ausführe, aber das '*' bleibt alleine, wenn ich es in 'zsh' starte. – chepner

9

Sie können eine neue „Ansicht“ erstellen, die nur lokale Zweige wie folgt zeigt:

  1. Gehen Sie Ansicht -> Neue Ansicht ... (Oder drücken Sie die Shift-F4)
  2. im angezeigten Dialogfenster, geben die "Ansichtsname" etwas Sinnvolles wie "Local Branches"
  3. Check „Alle erscheint (lokale) Filialen "in der R eferenzen Bereich
  4. Check „diese Ansicht speichern“, um diese Einstellungen für zukünftige
  5. Jetzt

startet zu speichern, sollten Sie eine „Local Branches“ Option im Menü Ansicht sehen. Wenn Sie diese Ansicht auswählen, werden nur Commits angezeigt, die in lokalen Zweigstellen vorhanden sind. Beachten Sie, dass Sie weiterhin Remote-Zweigbeschriftungen sehen können, jedoch nur dann, wenn sich das Commit, auf das sie verweisen, in einer lokalen Verzweigung befindet.

4

Da ich diese Frage in der Suche gefunden hat die akzeptierte Antwort für mich nicht, und ich fand schließlich eine Lösung, die, tat ich dachte, ich würde Aktie:

gitk --argscmd='git for-each-ref --format="%(refname)" refs/heads' 

Es wird sogar aktualisieren Wenn Sie einen Zweig hinzufügen und dann einen laufenden Gitk mit F5 aktualisieren. Sie können Tags sind auch mit:

gitk --argscmd='git for-each-ref --format="%(refname)" refs/heads refs/tags' 

Oder mit U-Liste (kürzer, aber betrügt leicht):

gitk --argscmd='git rev-list --no-walk --branches --tags' 
+0

Danke. Ich hoffe, es wird anderen Leuten nützlich sein, die diese Frage finden. –

+0

funktioniert besser auf poshgit wie folgt: gitk --argscmd = "git für-jedes-ref --format = '% (refname)' refs/köpfe refs/tags" –