我是Github的新手,并且生成SSH密钥看起来是必要的.我的老板告诉我这件事,所以我需要遵守.
我成功创建了SSH Key,但是当我要将它添加到ssh-agent时
这就是发生的事情
什么似乎是问题?
Kri*_*ana 145
看来你需要ssh-agent
在使用它之前运行:
eval `ssh-agent -s`
Run Code Online (Sandbox Code Playgroud)
本主题回答了这个问题:无法打开与身份验证代理的连接
der*_*271 40
我检查了这篇文章的所有解决方案以及@kenorb上面引用的帖子,我找不到任何适用于我的解决方案.
我在Windows 7上使用Git 1.9.5预览版,具有以下配置: - 从Windows命令提示符运行Git - Checkout Windows风格,提交Unix风格的行结尾
我使用' Git Bash '控制台来做所有事情...... 在我尝试安装SSH密钥之前一切都很顺利.GitHub的文档说要执行以下操作(在完成阅读帖子之前不要运行这些命令):
确保启用了ssh-agent:
如果您使用的是Git Bash,请启用ssh-agent:Run Code Online (Sandbox Code Playgroud) 如果您正在使用其他终端提示符,例如msysgit,请启用ssh-agent:# start the ssh-agent in the background ssh-agent -s # Agent pid 59566
Run Code Online (Sandbox Code Playgroud)# start the ssh-agent in the background eval $(ssh-agent -s) # Agent pid 59566
当然,我当然错过了你应该做其中一个事实的事实.因此,我多次运行这些命令,因为后面的ssh-add
命令失败了,所以我回到了这一步,并继续一遍又一遍地重试.
这导致每次运行这些命令时都会创建1个Windows的"ssh-agent"进程(每次输入这些命令时都会注意到新的PID?)
所以,Ctrl
+ Alt
+ Del
并点击End Process
以停止每个' ssh-agent.exe '进程.
既然已经清理了失败尝试中所有搞砸的东西,我会告诉你如何让它工作......
启动' ssh-agent.exe '进程
eval $(ssh-agent -s)
Run Code Online (Sandbox Code Playgroud)
并安装SSH密钥
ssh-add "C:\Users\MyName\.ssh\id_rsa"
Run Code Online (Sandbox Code Playgroud)
*使用您的用户名调整上面的路径,并确保* /.ssh 目录的位置在正确的位置.我想你在Git安装期间选择这个位置?也许不吧...
在我弄清楚这一点之前我做错的部分是我没有在' ssh-add '位置使用引号.以上是它需要在Windows上输入的方式.
Jho*_*lla 21
在Windows上,您可以使用以下命令之一运行Run.
对于32位:
"C:\ Program Files(x86)\ Git\cmd\start-ssh-agent.cmd"
For-64 Bit:
"C:\ Program Files\Git\cmd\start-ssh-agent.cmd"
状况:MVS2017应用程序-在Windows 10上使用“ Git Bash”-尝试连接到BitBucket存储库。
要明确的是,当您安装Windows版Git(https://git-scm.com/download/win)时,它附带了一个名为Git Bash的实用程序。
因此,我处于“ Git Bash”中,如下所示:
Mike@DUBLIN MINGW64 ~/source/repos/DoubleIrish (master)
$ git remote add origin git@bitbucket.org:Guiness/DoubleIrish.git
$ git remote -v
origin git@bitbucket.org:Guiness/DoubleIrish.git (fetch)
origin git@bitbucket.org:Guiness/DoubleIrish.git (push)
Mike@DUBLIN MINGW64 ~/source/repos/DoubleIrish (master)
$ git push -u origin master
[...]
git@bitbucket.org: Permission denied (publickey).
fatal: Could not read from remote repository.
Run Code Online (Sandbox Code Playgroud)
是否设置了私钥?
$ ssh -V
OpenSSH_7.7p1, OpenSSL 1.0.2p 14 Aug 2018
$ ls -a ~/.ssh
./ ../ known_hosts
Run Code Online (Sandbox Code Playgroud)
我可以看到,此时我的私钥文件(id_rsa
)丢失了。因此,我添加了它:(注意:生成一对私钥-公钥超出了我的答复范围,但是我可以说在Linux中,您可以使用ssh-keygen
它。)
$ ls -a ~/.ssh
./ ../ id_rsa known_hosts
Run Code Online (Sandbox Code Playgroud)
好的,让我们继续:
$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-KhQwFLAgWGYC/agent.18320; export SSH_AUTH_SOCK;
SSH_AGENT_PID=17996; export SSH_AGENT_PID;
echo Agent pid 17996;
$ ssh-add ~/.ssh/id_rsa
Could not open a connection to your authentication agent.
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我运行:
$ ssh-agent bash
Run Code Online (Sandbox Code Playgroud)
然后,再次:
$ ssh-add ~/.ssh/id_rsa
Identity added: /c/Users/Mike.CORP/.ssh/id_rsa (/c/Users/Mike.CORP/.ssh/id_rsa)
Run Code Online (Sandbox Code Playgroud)
它为我工作。希望这可以帮助
归档时间: |
|
查看次数: |
119373 次 |
最近记录: |