13

在我的 Emacs 23 编辑器的底部,我注意到 Emacs 知道我正在一个受版本控制的目录中工作,该版本控制系统是什么,以及我当前所在的分支。很酷!但是假设我在 master 分支上,我从命令行执行 a git commit,然后执行 a git checkout <branch>。Emacs 仍然显示我在 master 分支上。如何刷新 Emacs 以反映我当前所在的分支,而无需关闭所有缓冲区并重新启动它?

4

3 回答 3

15

M-x revert-buffer但我建议你使用magit-modeEmacs 来管理你的 git repos。

作为记录,我使用绑定revert-bufferF5

(global-set-key [f5] 'revert-buffer)
于 2013-06-11T18:10:01.237 回答
10

您可以通过启用 global-auto-revert-mode 自动恢复缓冲区。如果您想启用它,请将以下代码添加到您的配置文件中。

(global-auto-revert-mode 1)
(setq auto-revert-check-vc-info t)
于 2013-06-12T01:02:30.353 回答
6

要添加到 giordano 的答案,如果打开了许多位于git下的文件。然后打开ibuffer ( M-xibuffer) 标记要重新加载的缓冲区m,然后E使用(revert-buffer nil t).

于 2013-06-11T18:20:01.420 回答