终于把github的ssh给解决了

之前配置本地和github仓库的连接都是用https连的,第一次把ssh给配成功了,碰到的问题可真多。

1. 首先,在本地的git bash命令行窗口里敲:

ssh-keygen -t rsa -b 4096 -C "your.email@example.com"

 查了资料说这里的邮箱其实只是密钥文档里一个标记,但最好还是和你注册github用的邮箱一致。
 

2. 启动SSH代理服务,在git bash键入:

eval "$(ssh-agent -s)"

如果显示“unable to start ssh-agent service, error :1058”,那么恭喜你,和我一样报错了。我在这个地方卡了很多次。问题是出在windows系统服务里的OpenSSH服务被关了。解决方法如下:

        打开任务管理器,点击<服务>那一栏,在里面找到如图的<ssh-agent>,右键点击它找到<打开服务>,点进去弹出一个<服务>窗口。在里面找到<OpenSSH Authentication Agent>,右键点击它找到属性,将里面的启动类型改为<自动>。设置好后回到 图1 的任务管理器右键ssh-agent就可以打开服务了。然后再在git bash命令行里键入上面的eval命令。

3. 添加 SSH 密钥到 SSH 代理,git bash键入:

ssh-add ~/.ssh/id_rsa

4. 将公钥添加到github,首先用命令行获取刚才生成的ssh key公钥,git bash键入:

cd ~/.ssh
cat id_rsa.pub

右键copy打印出来的内容,去到github个人主页,点击右上角的个人头像,找到settings进入设置页面,找到SSH and GPG keys并点击,点击右上角New SSH key,然后将粘贴板的内容粘贴到下面的大黑框,最上面的标题可以自己随便命名,点击下面的Add SSH key确认添加。

5. 测试SSH连接

ssh -T git@github.com

这里还可能碰到问题。比如报错 “ssh: connect to host github.com port 22: Connection refused”,说明github默认的22号端口用不了,可以改成443号端口进行连接,配置方法参考官方文档,操作如下:
git bash 键入:

vim ~/.ssh/config

进入到vim编辑器对ssh配置进行编辑。编辑器的操作方法,按键盘按键“ i ”进入insert(写入模式),按键 ESC 退出编辑模式,输入“:wq!”保存并退出vim编辑器。在编辑器里面键入配置信息(第二行的缩进用tab健就可以,不知道没缩进有没有影响):

Host github.com
    Hostname ssh.github.com
    Port 443

把端口修改成443后,再次尝试上述的ssh -T git@github.com命令,然后弹出的窗口点确认, 提示输入“YES”就输入,就可以成功连接了。如果你在上面的步骤中不幸出现了和我一样的报错,你可能需要在最后步骤这里重启bash命令行才能够正常执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值