在Windows和Mac上同时维护Hexo博客

之前已经在Windows机器上部署了Hexo,将代码同时托管在了Github和Coding平台上。但是由于自己的新笔记本是Mac系统,所以需要完成在Windows和Mac上同时维护Hexo博客。

在单个系统下如何搭建Hexo:

1. Windows系统:

​ ① 下载并安装Nodejs。之后要用到Nodejs中的npm包管理工具进行Hexo的安装。

​ ② 下载并安装Git。之后要进行代码托管和同步。

​ ③ 打开Git Bash,然后进入要安装Hexo的文件夹,依次执行:

1
2
3
4
5
$ npm install -g hexo 
$ hexo init
$ npm install
$ hexo g #生成静态文件
$ hexo s #启动hexo服务

即可。此时可以访问 http://localhost:4000 来看本地博客内容。

​ ④ 去Github上新建一个名字为:xxx.github.io 的项目(xxx为你的Github用户名,这样就可以用 http://xxx.github.io 来访问该项目)。此时需要配置用户的SSH Key(Coding平台同样需要配置),查看本地是否存在密钥,如果不存在就生成:

1
2
3
4
#检查本机是否存在ssh密钥
$ cd ~/.ssh
#提示No such file or directory那么就自己生成
$ ssh-keygen -t rsa -C "你的邮件地址"

然后到用户目录下的.ssh\id_rsa.pub复制公钥,粘贴到代码托管平台的SSH Key处。

1
2
# 测试是否配置成功 如果是Coding平台:$ ssh -T git@git.coding.net
$ ssh -T git@github.com

终端显示Hello xxx即表示配置成功。

​ ⑤ 由于有时候访问Github较慢,所以我们也可以将Hexo托管到Coding平台上,在Coding上新建一个名字为:xxx.coding.me 的项目即可(xxx为你的Coding用户名,然后在项目->代码->打开Page服务,就可以用 http://xxx.coding.me 来访问该项目)。

​ ⑥ 在Hexo安装目录下找到_config.yml文件,配置有关deploy的内容:

1
2
3
4
deploy:
type: git
repository: git@github.com:xxx/xxx.github.io.git #项目的ssh访问地址
branch: master #这样使用hexo d命令就会把静态文件上传到项目的master分支

如果同时关联多个平台:

1
2
3
4
5
6
deploy:
type: git
repository:
github: git@github.com:xxx/xxx.github.io.git
coding: git@git.dev.tencent.com:xxx/xxx.coding.me.git
branch: master

如果两个平台要部署的分支名不同那么可以这么配置:

1
2
3
4
5
6
deploy:
type: git
message: [message]
repo:
github: <repository url>,[branch]
gitcafe: <repository url>,[branch]

​ ⑦ 此时使用 hexo d 就会将生成的静态文件提交到远程分支,我们就可以用之前的项目地址来访问博客了。

2. Mac系统:

​ ① 要注意的就是关于hexo的命令都会提示权限不足,这个时候我们要在命令前加上sudo (但是切记谨慎使用sudo rm -rf)。

如何在多个系统共同维护一个Hexo博客:

  1. 其实很好理解,hexo d 指令是把静态网页部署到远程分支上(在这里我们是master),那么要做到多系统共同维护,我们只需要把Hexo的源文件上传到另一个分支hexo(分支名可以随意命名),然后将项目默认分支设置为hexo,这样每次克隆项目就不需要再切换分支了。

    1
    源文件目录:source\, scaffolds\, themes\, _config.yml

    如果要上传themes文件夹下的主题,记得把主题文件夹中的.git目录删除,否则无法上传。

  2. 新系统先将hexo分支克隆下来,然后安装hexo所需组件(之后每次写博客前都先拉取源文件分支,以保证同步),然后写好博客后,将修改的内容提交到源文件分支,最后用hexo d指令将静态网页部署到master分支上即可。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #第一次克隆
    git clone xxx
    #查看当前分支是否为hexo
    git branch
    #如果不是就切换分支
    git checkout hexo
    #安装所需组件
    npm install hexo
    npm install
    npm install hexo-deployer-git --save

    #日后维护
    git pull origin hexo
    hexo new "add blog"
    git add .
    git commit -m "add blog"
    git push origin hexo
    hexo g -d

0%