在我的Emacs 23编辑器的底部,我注意到Emacs知道我在一个受版本控制的目录中工作,该版本控制系统是什么,以及我目前在哪个分支。太酷了!但是说我在主分支上,从命令行我git commit
,然后是git checkout <branch>
。 Emacs仍然显示我在主分支上。如何刷新Emacs以便它反映我当前所在的分支而不关闭所有缓冲区并重新启动它?
答案 0 :(得分:15)
M-x revert-buffer
但我建议您使用magit-mode
来管理您在Emacs中的git回购。
对于记录,我用来绑定revert-buffer
到 F5 :
(global-set-key [f5] 'revert-buffer)
答案 1 :(得分:10)
您可以通过启用global-auto-revert-mode自动恢复缓冲区。 如果要启用它,请将以下代码添加到配置文件中。
(global-auto-revert-mode 1)
(setq auto-revert-check-vc-info t)
答案 2 :(得分:6)
要添加到giordano的答案,是否打开了许多位于 git 下的文件。然后打开 ibuffer ( Mx ibuffer
)使用 m 标记要重新加载的缓冲区,然后 E 后跟(revert-buffer nil t)
。