我正在通过 SSH 使用基于密码的身份验证的 GIT(由于服务器端加密使用用户密码作为加密密钥,因此不支持公钥)。
是否可以以某种方式将密码存储在本地,以便我不必每次都输入密码?
到目前为止我尝试过:
- 将密码放在 URL 中,没有用
- 将机器、用户名和密码放入 _netrc 中,不起作用
答案1
如果您不能使用公钥验证,则可用的选项就很少。
如果您可以使用 -M 标志使 SSH 会话对 git 服务器保持打开状态,则可以编辑 ssh_config 以指定 ControlPath 和 ControlMaster 值。这将提示您手动登录,但这会使所有未来的 ssh 连接都通过主连接进行隧道传输。(请参阅:http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man5/ssh_config.5?query=ssh_config&sec=5)
这可能适用于 git。我还没有测试过。