0%

Hexo双线部署与双SSH设置

1.SSH配置

Hexo博客要同时在github和coding上发布,两端同时需要提交代码,这个时候就需要电脑配置多个ssh

1
2
3
4
5
6
7
8
9
进入~/.ssh目录

ssh-keygen -t rsa -C "你的邮箱"

SSH命名为Coding 按回车

生成ssh成功,会生成coding和Coding.pub文件

同样的操作,再创建Github ssh

92SZ_NP3XFQGJG4_5BXP5MH.png

H~4FLTAPS_8_@A_2PS_WFG3.png

![2B_5Z_BO12L`YFF1_UB~__1.png](https://i.loli.net/2020/01/31/upcFLNHEPMqf75W.png)

2.添加和编辑配置文件config

在 ~/.ssh 目录下新建一个config文件

1
touch ~/.ssh/config

添加如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
# github 个人的GitHub公钥
Host Github
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/Github # 指定特定的ssh私钥文件
User git

# Coding 个人的Coding公钥
Host Coding
HostName git.coding.net
PreferredAuthentications publickey
IdentityFile ~/.ssh/Coding # 指定特定的ssh私钥文件
User git

3.绑定github和coding的ssh

![LJV5`2OC4BO4_~_2R@LXXWO.png](https://i.loli.net/2020/01/31/PL4h13yFRjEGzAc.png)

KA__X~H9S38VCXDWZU2_G0L.png

4.ssh-add

手动开启ssh

1
eval `ssh-agent -s`

执行ssh-add

1
2
ssh-add Coding
ssh-add Github
1
'ssh-add -K 私钥' 这个命令可以永久生效.

ssh-add -l查看

1
2
3
4
$ ssh-add -l
2048 SHA256:**********************(一长串) Coding (RSA)
2048 SHA256:******************(一长串) Github (RSA)

关于windows下ssh-add失败的解决办法

打开git Bash命令行,依次执行

1
2
3
exec ssh-agent bash
eval ssh-agent -s
ssh-add "XXX\.ssh\id_rsa"

**引号中的路径就是你私钥文件的路径

5.测试

1
ssh -T git@github.com

出现

1
Hi ! You've successfully authenticated, but GitHub does not provide shell access.

成功

1
ssh -T  git@git.coding.net

出现

1
2
Coding 提示: Hello *****, You've connected to Coding.net via SSH. This is a personal key.
*****,你好,你已经通过 SSH 协议认证 Coding.net 服务,这是一个个人公钥

成功

hexo下的设置

1
2
3
4
5
6
7
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo:
github: git@github.com:Molers/Molers.github.io.git,master
coding: git@git.dev.tencent.com:molers233/molers233.git,master

遗留问题

貌似每一次开启都需要ssh-add

1
ssh-add Coding Github

欢迎关注我的其它发布渠道