在Emacs Lisp中获取VC根目录

时间:2013-04-20 21:59:33

标签: version-control emacs elisp visual-c++ magit

在Emacs Lisp函数中,我想知道任意文件夹的VC根(如果在源代码控制下),就像vc-print-root-log那样。我正在尝试从VC文件/文件夹外部执行此操作(虽然创建一个临时缓冲区来执行此操作会很好)。我目前只有通过magit的git-only解决方案 - (magit-get-top-dir dir-name)

我尝试使用(vc-deduce-backend)和'root命令,但vc-deduce-backend检查的变量似乎只在现有的vc模式(例如日志视图模式)缓冲区中设置。

是否有一种简单的方法可以将其从VC中删除?

1 个答案:

答案 0 :(得分:4)

查看您自己的vc-print-root-log示例,以下内容似乎就是您所追求的:

(require 'vc)
(let ((path "~/.emacs.d/el-get/"))
  (vc-call-backend (vc-responsible-backend path) 'root path))