Antworten:
Höchstwahrscheinlich haben Sie die Sicherungsoption aktiviert und backupcopy auf "no" oder "breakhardlink" gesetzt.
backup
in meinem .vimrc
, aber der Inode änderte sich immer noch, da standardmäßig die aktuelle Datei gesichert, anschließend gelöscht und nach Möglichkeit nach / * umbenannt * / die Datei / * in die Sicherung * / umbenannt und geschrieben wird das neue / * unter demselben Namen, wodurch der Inode * / geändert wird . Gelöst durch Hinzufügen set backupcopy=yes
zu .vimrc
.
Wenn Sie eine Datei ändern möchten, stehen Ihnen zwei Optionen zur Verfügung, die jeweils Vor- und Nachteile haben.
Fortgeschrittene Editoren wie Vim oder Emacs können zwischen den beiden Methoden wählen. Wenn sie die erste Methode verwenden, erstellen sie normalerweise zuerst eine Sicherungsdatei, die wiederhergestellt werden kann, wenn der Inhalt der neuen Datei nicht korrekt geschrieben werden kann.
Classical vi überschreibt die Datei an Ort und Stelle. Die Inode bleibt also unverändert.
In Vim, wie cjm bereits festgestellt hat , wird die Wahl durch die kontrollierten backup
, backupcopy
und writebackup
Optionen. Standardmäßig benennt Vim die alte Datei um und schreibt dann eine neue Datei mit dem ursprünglichen Namen, wenn Vim glaubt, die Attribute der ursprünglichen Datei neu erstellen zu können. Wenn Sie den vorhandenen Inode wiederverwenden möchten (und damit Datenverlust oder Zeitverschwendung beim Erstellen einer Sicherungskopie riskieren), fügen Sie set backupcopy yes
Ihren hinzu .vimrc
.
writebackup
weil ich bereits ausgeschaltet war backup
und der backupcopy
Inode sich noch änderte.