我一直在尝试使用emacs作为服务器,并且遇到了magit的问题。我们有一台Gitlab服务器在工作,当我尝试使用magit进行推或拉时,我会遇到密码的挑战。当我从命令行使用git时不会发生这种情况,更重要的是,如果我“直接”运行emacs (相对于使用守护进程运行emacsclient ),则不会发生这种情况。我应该指出,我运行的是Ubuntu15.04,我使用的是emacs 25。
我想知道其他人有没有遇到过这种行为?或者能帮我找到补救办法?感谢您的关注!
发布于 2015-09-09 13:20:51
现有答案中的建议使我找到了解决办法。我希望这会对遇到这个问题的人有所帮助。我使用systemd启动emacs守护进程,结果发现我需要在emacsd.service文件中添加一个指令:
[Service]
...
Environment=SSH_AUTH_SOCK=%t/keyring/ssh
...所以,谢谢你的线索--他们让我找到了正确的答案。
发布于 2015-09-05 13:39:09
这取决于用于上游回购url的协议。
通常,当ssh在$HOME/.ssh中找不到正确的私钥/公钥时,会询问密码。
当服务作为守护进程启动时,$HOME可能会有所不同,而不是由用户启动。
因此,如果ssh访问上游GitLab回购,这将解释这两次尝试之间的区别。
发布于 2015-09-06 00:50:13
你不是第一个对此有异议的人。这就是为什么在FAQ中提到它,它带您到从Windows用Magit推送。
它总结了各种选项,并包含故障排除说明。但是,并不是每个人都能找到它(或者提供足够的信息让我们远程诊断),所以一个核心贡献者编写了一个包,即使在配置不足的系统上也是如此。在这一页上也提到了这个包裹。
https://stackoverflow.com/questions/32413669
复制相似问题