git - Emacs 可以忽略 git 存储文件的时间戳变化吗?

标签 git emacs

我在 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/

相关文章:

git - 我可以只将 git 存储库复制到 Windows 吗?

emacs - 如何使用 Org 模式重复 Beamer 帧?

vim - 在Emacs中更好的窗口导航?

emacs - 如何将 ack 与 M-x find-grep 一起使用?

loops - 你怎么能停止一个很长的(也许是一个无限循环)内部 emacs 命令?

Emacs 组织模式 : how to adjust previous clock if I forget to clock out

git - git 可以提交 "empty versions"新的非空文件吗?

c - 模块化 C 开发的最佳实践是什么

git - 如果我的存储库中没有任何子模块,为什么 git 会说子项目是脏的?

"git status"背后的Git技术和逻辑