我目前正在尝试弄清楚如何使用GitPython使用具有密码的SSH密钥克隆远程存储库(使用Python 3.5.2)。文档在这方面并不是很有用:
您还可以使用Git命令上的新上下文管理器指定每个呼叫的自定义环境,例如:用于使用特定的SSH密钥。以下示例适用于从v2.3开始的git:
ssh_cmd = 'ssh -i id_deployment_key'
with repo.git.custom_environment(GIT_SSH_COMMAND=ssh_cmd):
repo.remotes.origin.fetch()
我从中收集到的是我可以通过ssh_cmd变量加载一个特定的密钥,而GitPython会加载它,但是如何输入密码?会提示用户吗?此外,我正在尝试从远程克隆,上面的代码假设您已经完成或首先创建了本地存储库?再说一次,至少对我来说还不是很清楚。
我正在尝试做什么,如果可以的话,你能举例吗?我很想看到一个简单的工作流程:
全部使用带密码的SSH密钥。
我还应该提到我在Windows 7机器上执行此操作,这与pexpect不兼容。
答案 0 :(得分:0)
我也有同样的问题。它从未得到回答(4.5 年后)。必须有一种方法可以通过 ssh 密钥使用 GitPython,这是一个基本功能。我不明白为什么要记录它。