JHHK

欢迎来到我的个人网站
行者常至 为者常成

SSH配置

参考:Generating a new SSH key and adding it to the ssh-agent

目录

目前github已经不允许使用账号密码的方式来拉取和提交代码了。可以使用下面两种方式:
一种方式是使用SSH的方式来拉取和获取
一种方式是可以使用令牌来拉取和获取

SSH配置

第一步:在本地创建一对公私钥

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

创建完成之后在 ~/.ssh 目录下查看

第二步:使用 SSH Agent 来管理密钥
手动将你要使用的私钥添加到 SSH Agent 中,使用以下命令

ssh-add ~/.ssh/id_rsa_github

查看是否添加成功
ssh-add -l

第三步:在github网站配置公钥

点击头像 - Settings - SSH and GPG Keys - New SSH Key

第四步:克隆代码时选择SSH

注意:保护好自己的私钥不要泄露

如果有多个github账号怎么配置

一、配置config

查看~/.ssh目录下是否有config文件,如果没有创建一个

touch config

我们有两个账号并且在github网站上配置好了ssh公钥

账号1:
url:git@github.com:JiangHuHiKe/JiangHuHiKe.github.io.git
公钥:id_rsa_github.pub

账号2:
url:git@github.com:zizhengblog/zizhengblog.github.io.git
公钥:id_rsa_lzz.pub

config的内容如下

# 配置 jianghuhike 账号  
Host github-jianghuhike
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_github


# 配置 zizhengblog 账号
Host github-zizhengblog
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_lzz

Host:为每个账号起一个别名,后续会用在url里
HostName:指定实际的主机名
User git:这是 GitHub SSH 连接的默认用户名
IdentityFile:应使用哪个私钥进行认证

二、添加到 SSH agent

配置完成后,确保你的 SSH agent 中已经添加了这些私钥:

ssh-add ~/.ssh/id_rsa_github
ssh-add ~/.ssh/id_rsa_lzz

三、修改url

更新远程仓库 URL:这里用到了别名

git remote set-url origin git@github-jianghuhike:jianghuhike/jianghuhike.github.io.git    
git remote set-url origin git@github-zizhengblog:zizhengblog/zizhengblog.github.io.git   

错误收集

一、配置了SSh的方式拉取代码,但clone的时候仍然让输入密码

虽然配置了SSH的方式拉取代码,但并添加到 SSH 代理

// 添加到代理
ssh-add ~/.ssh/id_rsa

// 查看是否添加成功
ssh-add -l

二、Xcode不支持在config中配置别名的方式

所以要想对iOS的项目使用别名的配置,不能在xcode自带的git可视化工具内操作,无法pull和push代码。
解决方式是:
1、使用source tree 或者 终端。
2、只配置ssh,不在config文件内配置别名。


行者常至,为者常成!





R
Valine - A simple comment system based on Leancloud.