psvn提供了在Emacs里面管理subversion repository的功能,我根据自己的喜好做了如下的配置:
(eval-after-load 'psvn '(progn (setq svn-status-hide-unknown t) (setq svn-status-hide-unmodified t) (add-hook 'svn-log-edit-done-hook (lambda () (kill-buffer svn-log-edit-buffer-name) (with-current-buffer svn-status-buffer-name (svn-status-update-cmd nil))))))
在*svn-status*
buffer里隐藏没有放入版本控制的文件,以及放入版本控制但是没有修改过的文件。如果想查看这两类文件的话,可以使用快捷键?和_关闭隐藏功能。
Hook
里面实现了两个功能,当提交成功后,先关掉编写log的buffer,然后更新(否则查询log时看不到最新提交的log)。