При работе над функциональной веткой git
мне часто приходится хранить свои изменения, чтобы зафиксировать исправление ошибки в основной ветке. Когда я закончу работать над изменениями, я git stash pop
, который обновляет временные метки на файлах.
Несмотря на то, что файлы идентичны, в следующий раз, когда я пытаюсь сохранить, я получаю:
ВНИМАНИЕ: файл был изменен с момента его чтения !!!
Вы действительно хотите написать в него (да / нет)?
Я не хочу автоматически перезагружать файл каждый раз, когда он меняется на диске, только когда я git stash pop
.
Прямо сейчас я вручную перезагружаю каждый буфер по отдельности ( :e
). Есть ли способ сделать это в одной команде?
:bufdo! e
.Вы можете сделать это с помощью
:checktime
команды. Из документов :Команда спросит вас, что делать для каждого буфера, файл которого имеет измененную временную метку. Чтобы отключить это для файлов, которые не изменились, вы можете сделать так,
:set autoread
чтобы vim просто перезагрузил их. ВИМ будет просить вас , если содержимое между буфером и файлом на диске изменились.Вы можете настроить карту, как показано ниже для простоты использования:
источник
nnoremap tl :tabnext<CR>:checktime<CR>
gvim
может быть связана сFocusGained
событиемvim
. Вы можете найти некоторую связанную информацию здесь - unix.stackexchange.com/a/383044/99801 .