In vim möchte ich durch alle Änderungen in alle Puffer in chronologischer Reihenfolge rückgängig machen.vim - Rückgängig über alle Puffer/Windows/offene Dateien usw.
z. B. in einer vim-Sitzung habe ich normalerweise viele Registerkarten geöffnet, mit vielen Fenstern in jedem Register. Mit u
zum Rückgängigmachen (oder g;
/g,
Verschieben durch die Änderungsliste) verschiebt vim Änderungen, die an Puffer vorgenommen werden, auch wenn in anderen Puffer neuere Änderungen vorgenommen werden. (Ich gebe zu, ist, was ich die meiste Zeit will.)
Aber gibt es eine Möglichkeit, durch Änderungen in allen Puffern in chronologischer Reihenfolge zurückzukommen? (Ich stelle mir vor, dass vim von Registerkarte zu Registerkarte springen würde, was in Ordnung wäre.)
Warum sollte das nützlich sein? ... meistens, wenn ich nach einer Pause mit dem Codieren fortfahre, kann ich mich daran erinnern, "wo ich vorgehe", d. h. alle Änderungen, die ich beim letzten Mal gemacht habe.
UPDATE (MacVim 7.3 Verwendung): Antworten über git mit/Mercurial gute Punkte machen (vor allem dank für git stash
), aber ich würde immer noch diese Funktion nützlich, da es mich zurück durch die jüngsten Änderungen Schritte, in um mit der Syntaxfärbung, innen vim etc.)
Ich würde argumentieren, dass Commit-Protokolle bessere Indikatoren für Fortschritte als alles andere sind. Selbst wenn Sie nicht abgeschlossene Änderungen haben, ist es möglich, eine Nachricht zu 'git stash' hinzuzufügen. – derekerdmann
FTR Ich stimme der allgemeinen Stimmung hier zu: VCS verwenden. Besser noch, benutze DVCS und microcommit! – sehe
Ein weiterer Anwendungsfall: Ich habe gerade 5 Minuten zu aggressiv umgestaltet. Jetzt versagen eine Tonne Unit-Tests und ich habe keine Ahnung, was ich kaputt gemacht habe. Ich möchte rückgängig machen, bis die Tests erneut bestanden haben. Ja, wenn ich vor dem Refactoring nach einer Überprüfung der Versionskontrolle suchen würde, wäre das in Ordnung gewesen, aber daran habe ich nicht gedacht. – alexanderbird