2012-11-09 16 views
7

In flüchtigen kann ich den Git-Status in einem neuen Fenster von :Gstatus und in diesem Fenster zu D auf eine Datei, um das Diff in einem neuen Split zu bekommen.Wie kann ich zwei Zweige mit flüchtigen teilen?

Es ist auch möglich, alle Versionen einer Datei mit zu erhalten, und ich kann alle vorherigen Commits mit :Glog -- laden.

Was ich möchte, ist ein Gstatus Fenster für die Diff von zwei Zweigen zu bekommen. Zum Beispiel mein Thema und Entwicklung Zweig, damit ich alle Dateien, die geändert haben, diff.

Ist es möglich, ein interaktives Fenster mit allen Dateien zu erhalten, die zwischen zwei Commits geändert haben?

+0

Wie ZyX erwähnt, könnte es nützlich sein, einen Befehl zu flux hinzuzufügen, um 'git diff --name-status {REV1} .. {REV2}' in ein Fenster zu ziehen. Oder vielleicht gibt es einen besseren Workflow ... wird aufpassen und auf jede Zauberei achten. –

Antwort

1

Da git Mercurial/Bazaar-Status zwischen zwei Revisionen nicht unterstützt, kann es kein Flüchtiger tun. Git hat stattdessen git diff --name-status, aber einfaches grep zeigt, dass diese Funktion niemals in flüchtig verwendet wird, außer um zu überprüfen, ob eine Datei sauber (d. H. Unmodifiziert) ist, wenn sie :Gw und Freunde tut.


Wenn Sie keine Angst vor etwas experimentellen Code sind, dann können Sie meine aurum versuchen, kann es Ihnen Statusfenster bringt mit

AuStatus rev topic wdrev development 

und mit C vimdiff bestimmten Datei sehen (schließen Statusfenster Verwenden Sie standardmäßig let g:aurum_statwincmd='k', um dies zu vermeiden.

Hinweis: mit hg-git und vim kompiliert mit + python aurum wird stabileren Code verwenden, da mercurial das primäre VCS ist, das ich verwende.


Eine weitere Idee ist mit vcscommand, Mercurial/Basar und hg-git/bzr-git. Dann wird der Status mit

VCSStatus -r topic -r development 

angesehen (mercurial, erinnere mich nicht, wie man es im Basar macht). Ich bin mit vcscommand zwar nicht vertraut, kann also nicht sagen, ob es so viele interaktive Funktionen im Statuspuffer bietet wie flüchtige oder aurum (scheint es nicht: nmap <buffer> im git status buffer zeigt nichts). Der obige Code sollte entsprechend der Dokumentation funktionieren, habe ich aber nicht getestet.

+0

Ich habe ein Problem auf Flüchtigen erstellt: https://github.com/tpope/vim-fugitive/issues/270 – tidbeck