Erstellen Sie lokalen Backup bei der Bearbeitung von Remote-Dateien mit netrw in vim

StackOverflow https://stackoverflow.com/questions/563385

  •  05-09-2019
  •  | 
  •  

Frage

Ich arbeite mit vielen Dateien remote vim und die netrw Plugin. Ich habe auch immer timestamped Backups durch die &backupext Wechsel (zu finden im Dokumentation ).

Während in einer Remote-Datei zu arbeiten. (Scp: //server//folder/file.txt), habe ich bemerkt, dass, wenn ich es speichern, wird ein Backup nicht einmal gemacht werden

Gibt es eine Möglichkeit ich ein Backup automatisch lokal gemacht haben kann (nach vim Backup-Einstellungen) jedes Mal, wenn ich eine Remote-Datei speichern?

War es hilfreich?

Lösung

Ich glaube nicht, gibt es eine einfache Einstellung zu wechseln. Sie könnten allerdings zu Skript etwas versuchen - fügen Sie Ihren eigenen BufWriteCmd automatischen Befehl eine Sicherungskopie zu schreiben. Versuchen Sie set verbose=9 mit für das Debuggen (und zu sehen, wie netrw tut es).

Andere Tipps

Ich kämpfte einmal mit einer Variante dieses Problems: lokale Aufzeichnungen Änderungen zu halten wir zu einem gemacht einzelnereinzelneeinzelnes Quellbaum auf einer Single Remote-Maschine.

beibehalten ich eine lokale Kopie des gesamten Quellbaum und eine lokale SVN-Repository die Dateien auf Version. Stattdessen netrw und auf der Suche nach einer Möglichkeit der Verwendung von Backups lokal zu speichern, habe ich alles lokal bearbeitet und einen Weg benötigt, um automatisch meine Änderungen an der entfernten Maschine ausbreiten.

Lösung 1: Verwenden Sie eine BufWritePost automatischen Befehl scp aufrufen, um die Datei zu kopieren, nachdem es geschrieben worden ist. Dies kann effizient genug arbeiten, wenn die Systemprozesse ermöglicht Filedeskriptoren zu teilen, da es möglich ist, eine Master-SSH-Sitzung zu dem Remote-Rechner und teilen Sie die Verbindung für die nachfolgenden Sitzungen laufen. Wenn Sie weniger glücklich sind (ich war zu der Zeit auf einem Windows-Rechner in Betrieb), es ist die Zeit, um eine neue Verbindung für jede Datei zu verhandeln dauert kann schmerzhaft sein

Lösung 2: für Fenster, benutzen WinSCP , das einen Modus "halten Remote-Rechner aktualisiert", in dem es überwacht ein Verzeichnis und alle Unterverzeichnisse für Änderungen und dann breitet sich die Änderungen automatisch, eine Reihe von Regeln (Muster zu ignorieren, Übertragungsmodus für verschiedene Dateitypen, etc.) gegeben.

scroll top