我试图同时使用Magit和TRAMP,以便从macOS笔记本电脑访问服务器上的git存储库。
服务器默认具有git 1.7.12,低于Magit所需的版本。我已经将git 2.9.5安装到/my/local/path/bin
上,可以通过TRAMP使用git --version
键入M-x shell
进行检查,结果是预期的2.9.5。远程外壳程序为zsh
,相关的本地路径在.profile
中设置。
因此,建议如下:
我将以下内容添加到我的dotspacemacs / user-config中:
(require 'tramp)
(add-to-list 'tramp-remote-path "/my/local/path/bin")
(add-to-list 'tramp-remote-path 'tramp-own-remote-path)
然后我按照手册中的建议删除.emacs.d/.cache/tramp
,以便流氓不会尝试重用旧的连接并加载spacemacs。我受到欢迎:
1 error(s) on startup! Spacemacs may not be able to operate properly.
我使用emacs --debug-init
查找原因
Error in dotspacemacs/user-config: Symbol's value as variable is void: path
对我添加的行进行注释消除了错误,该错误向我提示'tramp-remote-path
是无效的。事实并非如此,尤其是因为我添加了(require 'tramp)
以确保在访问远程路径变量之前已加载流氓。
删除require 'tramp
不能解决问题。删除所有三行并进行C-h v 'tramp-remote-path
输出(在使用流浪汉进行任何操作之前):
(tramp-default-remote-path "/bin" "/usr/bin" "/sbin" "/usr/sbin" "/usr/local/bin" "/usr/local/sbin" "/local/bin" "/local/freeware/bin" "/local/gnu/bin" "/usr/freeware/bin" "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" "/opt/sbin" "/opt/local/bin")
这令人困惑,因为它似乎表明启动时所涉及的变量不是 无效。此外,我在服务器上编译了一个emacs和spacemacs版本,如果我登录并使用magit,它将发现我本地安装的git版本没有问题,一切正常。
如果有人能够进一步调试,将非常感谢,谢谢。
答案 0 :(得分:0)
在我的/.spacemacs中发现了一个错字,我上面粘贴的错误对我来说似乎很狡猾,我意识到这行:
1
实际上写为:
(add-to-list 'tramp-remote-path "/my/local/path/bin")
请注意远程和路径之间的空间。现在已解决此问题,再次删除缓存并重新加载已解决了该问题。