Может ли Emacs игнорировать изменение метки времени в файле git stashed? - PullRequest
2 голосов
/ 29 января 2009

Я написал небольшую функцию в Emacs, которая делает

git stash
git stash apply

в репозитории Git файла, который я посещаю, и я добавил эту функцию в after-save-hook, поэтому он запускается каждый раз, когда я сохраняю файл. Проблема в что, когда я сохраняю файл, запускаются команды git и меняются метки времени, поэтому Emacs считает, что файл был изменен вне самого Emacs. Естественно, когда я пытаюсь редактировать Снова (без закрытия и повторного открытия файла) Emacs спрашивает, хочу ли я действительно редактировать буфер, который довольно раздражает.

Любые идеи о том, как заставить Emacs не думать, что файл был изменен как результат вышеприведенных команд git?

РЕДАКТИРОВАТЬ: Спасибо jvasak. Добавление (revert-buffer nil t t) в конце моей функции сделал трюк.

1 Ответ

3 голосов
/ 29 января 2009

Не знаю наверняка, что это сработает, но вы можете добавить revert-buffer к вашему after-save-hook, который должен перезагрузить файл с диска. В сочетании с трюком revert-without-query из Руководства *1005* по GNU *, это может обеспечить желаемое поведение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...