Я пытаюсь использовать Magit и TRAMP вместе для доступа к git-репозиториям на сервере с ноутбука MacOS.
На сервере установлен git 1.7.12 по умолчанию, что ниже требуемой версии Magit,Я установил git 2.9.5 на /my/local/path/bin
. Я могу проверить это, набрав git --version
, используя M-x shell
через TRAMP, и вы получите 2.9.5, как и ожидалось.Удаленная оболочка - zsh
, а соответствующий локальный путь задается в .profile
.
Так, как предлагается:
https://stackoverflow.com/a/37886703/3228006
Я добавляю следующее в мои 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
, как предложено в руководстве, чтобы 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)
, чтобы быть уверенным, что tramp был загружен перед доступом к переменной удаленного пути.
Удаление require 'tramp
не решает проблему.Удаление всех трех строк и выполнение C-h v 'tramp-remote-path
выходных данных (прежде чем что-либо делать с tramp вообще):
(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, и все работает как положено.
Если кто-нибудьможет помочь в дальнейшей отладке, будет очень признателен, заранее спасибо.