首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过SSH从VSTS克隆Git需要一个密码!出乎意料

通过SSH从VSTS克隆Git需要一个密码!出乎意料
EN

Stack Overflow用户
提问于 2017-05-09 11:18:24
回答 3查看 8K关注 0票数 6

目标是克隆中的Git存储库,而不提供任何密码。进一步的目标是完全非交互地完成它,完全没有任何提示。

问题描述:

操作系统是Windows 2016。假设我的用户名是蝙蝠侠。我已经在C:\Users\batman\.ssh\id_rsa的Windows中设置了私钥(没有密码)。

我在VSTS为我的用户帐户添加了公钥。一切都很好。

我想克隆这个存储库,而VSTS为我提供了一个到存储库的SSH URL。我在执行以下命令时使用它:

git clone ssh://mycompany@mycompany.visualstudio.com:22/MyProject/_git/MyRepo

答复:

代码语言:javascript
运行
复制
Cloning into 'MyRepo'...
Enter passphrase for key '/c/Users/batman/.ssh/id_rsa':
mycompany@mycompany.visualstudio.com's password:

因此,首先,它要求输入密码,我只需按Enter键,但最后一行是令人困惑的。我应该输入什么密码,它为什么要问它?怎么才能让它不问呢?如何使克隆命令完全不问任何问题?

EN

Stack Overflow用户

发布于 2020-03-20 17:42:31

使用以下命令遍历日志:

代码语言:javascript
运行
复制
GIT_TRACE=1 GIT_SSH_COMMAND="ssh -vvv" git clone ssh://pathToYourRepo

在大多数情况下,问题在于.ssh目录中缺少默认名称id_rsa的私钥。您可以通过允许默认名称"id_rsa“来解决这个问题,方法是在使用ssh-keygen生成密钥时不在键名提示符中指定任何内容。如果必须使用不同的键,可以通过使用命令指定其路径来做到这一点:

代码语言:javascript
运行
复制
 ssh-agent bash -c 'ssh-add ~/.ssh/anotherKey; git clone ssh://pathToYourRepo'

最后,确保您实际上正在复制路径的ssh版本,而不是https (请确保路径以ssh://开头,而不是https://),并且在将公钥复制到服务器的密钥列表时没有任何空白。

票数 2
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43868402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档