Общий ресурс Vagrant NFS не показывает обновленный файл, если размер не изменяется

10

При монтировании / vagrant через NFS измененный файл на хосте не обновляется на гостевой, если размер не изменяется. Быстрое обновление / опечатка не сразу отражаются, если я не сделаю достаточно изменений, чтобы размер был другим.

Я попытался установить lookupcache = none, но кроме того, что все замедлилось, ничего не изменилось.

Я использую OSX ML в качестве хоста и Arch Linux в качестве гостя. NFS v3 (из-за OSX).

hlidotbe
источник
1
вам нужно изменить mtime файла, чтобы клиент NFS перечитывал кэшированные блоки.
Кофеманн

Ответы:

28

Это беспокоило меня месяцами, и я наконец нашел исправление, если вы используете Sublime Text (я на ST3). Проверьте, использует ли он атомные сейвы - они стали причиной этой проблемы для меня.

К вашему Preferences.sublime-settingsфайлу ( Sublime Text> Настройки> Настройки - Пользователь ) добавьте это:

{
    "atomic_save": false
}

Это исправило проблему NFS с размером кэшированного файла. До сих пор не уверен, что проблема в корне в демоне NFS OS X или в клиенте Ubuntu (мои деньги на OS X).

Энди Фаулер
источник
Я приму ваш ответ, поскольку мы нашли такое же исправление, но я забыл отредактировать / ответить на вопрос. Спасибо
hlidotbe
Это важная информация. Один из наших разработчиков заметил, что изменение цифры в коде не отражалось на его бродячем сайте (тот же размер файла). Это довольно плохая ошибка. Спасибо, что поделились этим решением.
Бернард
Это сработало мгновенно. Вы также можете добавить его в конфигурационный файл вашего проекта в разделе «Настройки», если вы не хотите настраивать, как Sublime сохраняет файлы в не-бродячих проектах.
dcneiner
Я подозреваю, что это заняло бы у меня часы, дни, недели, месяцы или годы, чтобы выследить. Спасибо Энди!
14:00
1
Вы только что спасли меня, как ГАЗИЛЬОН нарезанного контента / сохранить / обновить / вставить / сохранить / обновить ... Я покупаю вам пиво.
Джордж Кацанос
0

Пользователи VIM

@andy сделал все это, имел ту же проблему, используя VIM, просто используйте:

:set nobackup
Мик
источник