Wenn git
ich an einem Feature-Zweig arbeite , muss ich meine Änderungen häufig speichern, um eine Fehlerbehebung für den Hauptzweig vorzunehmen. Wenn ich mit den Änderungen fertig bin git stash pop
, aktualisiere ich die Zeitstempel der Dateien.
Obwohl die Dateien identisch sind, erhalte ich beim nächsten Versuch, sie zu speichern, Folgendes:
ACHTUNG: Die Datei wurde seit dem Lesen geändert !!!
Möchten Sie wirklich schreiben (j / n)?
Ich möchte die Datei nicht jedes Mal automatisch neu laden, wenn sie sich auf der Festplatte ändert, nur wenn ich git stash pop
.
Im Moment lade ich jeden Puffer einzeln manuell neu ( :e
). Kann ich das auf irgendeine Weise mit einem einzigen Befehl tun?
:bufdo! e
.Sie können dies mit dem
:checktime
Befehl tun . Aus den Dokumenten :Der Befehl fragt Sie, was für jeden Puffer zu tun ist, dessen Datei einen geänderten Zeitstempel hat. Um dies für Dateien zu deaktivieren, die sich nicht geändert haben, können Sie
:set autoread
vim zwingen, sie einfach neu zu laden. vim werden Sie , wenn der Inhalt zwischen dem Puffer und der Datei auf der Festplatte geändert haben fragen.Sie können eine Karte wie die folgende einrichten, um die Verwendung zu vereinfachen:
quelle
nnoremap tl :tabnext<CR>:checktime<CR>
gvim
, hängt möglicherweise mit demFocusGained
Ereignis in zusammenvim
. Informationen dazu finden Sie hier -Weitere unix.stackexchange.com/a/383044/99801 .