我目前正在研究如何使用GitPython来克隆具有密码的SSH密钥的远程存储库(使用Python3.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与它是不兼容的。
发布于 2021-01-04 21:48:50
我也有同样的问题。它从未得到答复(4.5年后)。必须有一种使用ssh键的GitPython的方法,这是一个非常基本的特性。我不明白为何会有文件记载。
https://stackoverflow.com/questions/38236608
复制相似问题