Відповіді:
Швидше за все, ви ввімкнули параметр резервного копіювання та резервну копію на "ні" або "перервану посилання".
backup
в моєму .vimrc
, але inode все ще змінювався, тому що за замовчуванням є резервне копіювання поточного файлу, видалене згодом і / / коли це можливо * / перейменування файлу / * у резервну копію * / та запис новий / * під тим самим іменем, фактично змінюючи inode * / . Вирішено шляхом додавання set backupcopy=yes
до .vimrc
.
Коли ви хочете змінити файл, у вас є два варіанти, кожен зі своїми перевагами та недоліками.
Розширені редактори, такі як Vim або Emacs, можуть обирати між двома методами. Коли вони використовують перший метод, вони, як правило, спочатку роблять файл резервного копіювання, який можна відновити, якщо вміст нового файлу неможливо записати правильно.
Класичний vi замінює файл на місці. Тож інода є незмінною.
В Vim , як CJM вже заявив , що вибір управляється backup
, backupcopy
і writebackup
опцій. За замовчуванням Vim перейменовує старий файл, потім записує новий файл з оригінальним іменем, якщо він вважає, що він може створити атрибути оригінального файлу. Якщо ви хочете повторно використовувати існуючий inode (і так ризикуєте втратити дані або витратити більше часу на створення резервної копії), додайте set backupcopy yes
до свого .vimrc
.
writebackup
бо я вже вимкнув backup
і backupcopy
але инод все ще змінюється.