创建第二个密钥:

最简单方式:在SSH根目录下使用以下命令:

1
ssh-keygen -t rsa -f  ~/.ssh/这里是新密钥名称 -C "这里是你的邮箱"

也可这样方式老方式:
1、先将第一个密钥移出到桌面暂时存放(.ssh文件夹下)
2、创建第二个密钥和创建第一个密钥一样的顺序。

回到你的git bash中:

1
2
git config --global user.name "GitHub用户名"
git config --global user.email "GitHub的邮箱"

想和对检查下面命令(可省略)

1
2
git config user.name
git config user.email

3、创建SSH,一路回车:

1
ssh-keygen -t rsa -C "GitHub的邮箱"

已经生成了.ssh文件夹里:
图示
4、新生成的密钥改名后将第一个密钥放回文件夹里(.ssh)
5、公钥放GitHub里
6、在gitbash中,查看是否成功

1
ssh -T [email protected]

7、在第二个博客文件夹下安装deploy-git

1
npm install hexo-deployer-git --save

8、然后

1
2
3
hexo clean
hexo generate
hexo deploy

以上部分和原文不同,按原文多次失败,也可能没有操作好原文步骤,这个步骤后成功。

配置config

1、查看你的.ssh/根路径下, 有没有config文件
没有使用以下命令创建:

1
touch config

2、用记事本或者其他工具打开config文件(注意config文件是没有任何后缀名的),写入以下配置:

1
2
3
4
5
6
7
8
9
10
11
#第一个账号,默认使用的账号,不用做任何更改
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa

#第二个新账号,#"xxxxxx"为前缀名,可以任意设置,要记住,后面需要用到
Host xxxxxx.github.com
HostName github.com
User git
IdentityFile ~/.ssh/这里是你创建的新密钥的名称

3、清空本地的 SSH 缓存,添加新的 SSH 密钥 到 SSH agent中。
使用命令cd ~/.sshcd到.ssh根目录下,依次执行以下命令:

1
2
3
ssh-add -D
ssh-add xxxxxx #旧密钥名称,一般是id_rsa
ssh-add xxxxxx #新创建的密钥名称

如果执行以上命令出现错误:

Could not open a connection to your authentication agent.,

那么就需要先执行

1
ssh-agent bash

再执行以上命令

验证配置是否成功

依次执行以下命令,第一个为默认ssh_key验证;第二个为新的ssh_key验证,其中“xxxxxx”为你先前在config文件中的命名

1
2
ssh -T [email protected]
ssh -T [email protected]

依次显示以下信息, 则说明配置成功:

1
Hi 你的用户名! You've successfully authenticated, but GitHub does not provide shell access.

取消全局用户名/邮箱配置,单独设置用户名/邮箱

执行如下命令,取消全局用户名和邮箱配置(如果已经设置了全局的话):

1
2
git config --global --unset user.name
git config --global --unset user.email

分别进入你的两个Hexo博客.git目录下执行以下命令单独设置用户名/邮箱:

1
2
git config user.name "这里是用户名"
git config user.email "这里是你的邮箱"

如果此时报错:fatal: not in a git directory,说明你没有进入.git目录下,具体路径:\Hexo.deploy_git.git,.git目录是隐藏的,需要你设置隐藏目录可见.
执行以下命令可以查看设置是否成功

1
git config --list

hexo 配置文件修改git地址

打开你的第二个博客Hexo目录下的_config.yml文件,找到deploy关键字,写入以下配置并保存:

1
2
3
4
deploy:
type: git
repository: [email protected]:你的用户名/你的用户名.github.io.git
branch: master

再次执行hexo g -d就能成功将新的博客部署到 Github 上了

原文参考作者点击

1
2
3
4
5
6
npm install -g hexo-cli
hexo init f

npm install

hexo init f