我在 Emacs 中编写了一个小函数,它执行以下操作
git stash
git stash apply
在我访问的文件的Git存储库中,我添加了这个功能
在 after-save-hook
中,因此每次保存文件时它都会运行。问题是
当我保存文件时,上面的 git 命令会运行并更改时间戳,
因此 Emacs 认为该文件已在 Emacs 本身之外进行了修改。当然,当我尝试编辑
再次文件(无需关闭并重新打开)Emacs 询问我是否要真正编辑缓冲区,这非常烦人。
有关如何使 Emacs 不认为文件已更改为的任何想法 上述 git 命令的结果?
编辑:谢谢jvasak。在函数末尾添加 (revert-buffer nil t t)
成功了。
最佳答案
我不确定这是否有效,但您可以将 revert-buffer
添加到 after-save-hook
中,它应该从磁盘重新加载文件。与 GNU Emacs Manual 中的 revert-without-query
技巧相结合,这可能会提供所需的行为。
关于git - Emacs 可以忽略 git 存储文件的时间戳变化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/491476/