一、检查是否配置过:
打开终端,执行命令进入ssh目录:
cd ~/.ssh
进入不了,说明没生成过。
或者直接输出秘钥看是否有:
cat ~/.ssh/id_rsa.pub
如果输出公钥内容说明已经配置过了,如果输出No such file or directory说明没有配置过。
对于配置过的公钥不使用的话可以备份一份出来比如,这样:
mkdir backup
mv id_rsa* ./backup/
二、重新配置
1.配置账户
用户名,建议拼音或英文
# 邮箱地址
git config --global user.name "account name"
git config --global user.email "account email"
2.生成秘钥
上面的邮箱地址,注意空格是否有
ssh-keygen -t rsa -C"account email"
连续按3次enter,直到出现下面的截图:
1、2步骤后,就完成了账户创建、秘钥生成,.ssh文件夹下就多了id_rsa(私有秘钥)和id_rsa.pub(公有密钥)
### 另一个教程
生成密钥命令:ssh-keygen -o -t rsa -b 4096 -C "your_email@example.com"
按下回车之后命令行会有如下的顺序提示:
//输入文件的路径,如使用建议的文件路径(括号内为建议路径)则按下回车
1.Enter file in which to save the key (/Users/xxx/.ssh/id_rsa):
//输入保护密钥对的密码,不需要密码直接按回车即可
2.Enter passphrase (empty for no passphrase):
//再次输入密码,没有按回车
3.Enter same passphrase again:
我直接回车到底了...
作者:码掺和_夏尼
链接:https://www.jianshu.com/p/879cdb2ff4a9
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
3. 查看公有密钥:
打印出一坨就是有,报错或提示没有就是没有
cat ~/.ssh/id_rsa.pub
4. 拷贝公钥命令(Mac OS的命令):
pbcopy < ~/.ssh/id_rsa.pub
此时已拷贝到了剪切板,直接ctrl+v就可以复制到任意输入框。
或者打开.pub公钥文件全文完整地复制,包括开头ssh-rsa在内的哦~
命令行打开文件:
~/.ssh/id_rsa.pub
5. 添加到git网站中:
Git添加SSH Key:
- 打开github - profile settings - SSH keys - Add an SSH Key,
- Key中粘贴刚才复制的
- Title里面会自动生成邮箱,
- 点击add key完成添加
- 最后可以点击SSH keys 查看
三、测试配置
输入测试命令:
ssh -T git@xxx.com # @后换成您git的域名
#【补充上条】
ssh -T remotesource # remote source 为远程库git根目录
比如:
我用的gitlab,git根目录为gitlab.alibaba-inc.com
所以使用命令:ssh -T git@gitlab.alibaba-inc.com
没有错误的情况下会收到Welcome to xxxxxx的回复… 配置完成
这里必须输入完整的“yes”字符串,一个“y”不行
检查是否有权限?
sudo ssh-agent bash -c ~/.ssh/id_rsa
打印如: Permission denied,表示没有权限。
查看加入的密钥列表
ssh-add -l
查看调试信息
ssh -v git@github.com
四、克隆项目SSH地址
本地克隆git上项目的ssh地址
git clone ssh的项目地址
作者:安妮小宝 链接:https://www.jianshu.com/p/601735ce7113 来源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
http://www.mamicode.com/info-detail-2554945.html
配置多个账号SSH
ssh config 配置
https://www.cnblogs.com/piperck/p/6188984.html
stackoverflow关于SSH配置的相关说明:
https://stackoverflow.com/questions/13363553/git-error-host-key-verification-failed-when-connecting-to-remote-repository/29908140#29908140
.ssh没有know_host
这一步不要直接回车,应该输入yes
若没有know_host映射表,链接的时候可能呢报错如下:
配置公钥还要链接成功。不然配不了公钥就不能用ssh的方式克隆项目。