一台电脑多个hexo站点的配置

一台电脑多个hexo站点的部署方法

本文主要内容转载自 https://www.sugen.cn/article-20190622.html

我使用的系统是 Ubuntu 20.04

有时候我们需要在一台电脑上存放多个hexo的网站文件,这时候使用git来部署的时候就会遇到问题,因为第一次部署时会要求我们输入邮箱与密码,而在另一个站点文件夹中使用hexo d来部署的时候则会直接使用之前设置的那个邮箱与密码,并且我们是无法使用git带参数的方式来使用hexo d进行部署的,所以我们只能转而使用ssh key的方式来进行部署。

生成ssh key

首先我们要使用ssh-keygen来为两个站点生成两个ssh密匙

1
2
ssh-keygen -t rsa -b 4096 -C "account1@example.com"
ssh-keygen -t rsa -b 4096 -C "account2@example.com"

开启ssh agent并添加密钥

使用eval "$(ssh-agent -s)" 来启动ssh-agent (直接输入ssh-agent -s应该也没什么问题)

然后把私钥添加到ssh-agent中进行管理。

1
2
ssh-add -K ~/.ssh/account1
ssh-add -K ~/.ssh/account2

编辑ssh的配置文件,为git帐户设置别名

编辑ssh配置文件 (没有文件则新建) 我这里还有个coding page的别名配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
nano ~/.ssh/config

Host account1.github.com
HostName github.com
User git
IdentityFile ~/.ssh/account1

Host account2.github.com
HostName github.com
User git
IdentityFile ~/.ssh/account2

Host notesail.coding.net
HostName e.coding.net
User git
IdentityFile ~/.ssh/notesail

配置好之后可以使用ssh -T account1.github.com测试是否可以正常连接。

使用密钥部署hexo

修改hexo的站点配置文件站点文件夹中的_config.yml,不是插件文件夹里的

1
2
3
4
5
6
deploy:
- type: git
repo: git@account1.github.com:username/username.github.io.git
branch: master
name: username
email: example@gmail.com

之后再使用hexo d的时候便会使用该配置中的用户来进行部署,而不是环境变量中的git用户。 如果还是存在问题,先删除掉站点文件夹中的 .deploy_git 文件夹并再次部署.


评论

:D 一言句子获取中...

加载中,最新评论有1分钟缓存...