使用hexo搭建博客
前言
之前也使用了hexo
搭建博客,发布到github
, 一开始发布了2篇文章之后也没怎么关心,一个是自己懒,二个是当时并不知道如果使用多用户管理,无法在公司的电脑上也同步更新,如果每次在公司写好,再回家整理发布,就有些太花时间了。所以专门抽空,花了几个小时学习了git
分支管理
目标
- 使用
hexo
搭建博客网站 - 将博客发布到
gitee
上 - 在多台电脑上管理
- 将博客同步到个人服务器
一、使用hexo
搭建博客网站
查看hexo官方网站
1. 安装git
从git官网下载并安装git
安装完成后,使用命令git version
查看版本,能查看到表示已经安装
2. 安装node.js
从node.js官网下载安装
使用命令node -v
, npm -v
查看版本
3. 安装hexo
使用命令npm install -g hexo-cli
下载hexo-cli
(hexo
客户端)
4. 建立博客
具体如何使用hexo
建立博客,查看hexo
官网,这里说一下简单使用
使用命令hexo init blog
在一个blog
文件中建立博客,blog
一定需要是空文件夹,进入文件夹之后,使用命令hexo s
就启动了,然后查看网站http://localhost:4000
即可查看到网站
5. 网站配置
查看hexo
官网教程
6. 配置主题next
很简单,查看next官网
二、将博客发布到gitee
上
发布gitee
博客非常简单,难点在于如何将hexo
博客站点整体配置到仓库中。
下面是发布博客,只需要三步,如下。
- 在
gitee
上新建博客站点
创建和用户名同名的仓库,如我的gitee
用户名是mycroftwong
, 我新建了一个mycroftwong
仓库,里面没有任何文件,或者只有一个README.md
文件
然后选择 服务 -> Gitee Pages -> 选择部署分支master -> 部署 即可
- 修改博客配置文件
_config.yml
下面是我的配置
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://mycroftwong.gitee.io/
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:
deploy:
type: git
repo: https://gitee.com/mycroftwong/mycroftwong.git
branch: master
- 发布
使用命令hexo d
即可将博客发布到gitee
上,然后再在gitee pages中更新即可通过https://mycroftwong.gitee.io
访问到
三、在多台电脑上管理
在多台电脑上管理博客的原理,就是将这个博客发布到git
仓库
两种实现方式:
- 将
hexo
和博客网站放在不同的git
仓库 - 将
hexo
和博客网站放在同一个git
仓库的不同分支
各有利弊,放在不同的仓库方便管理,放在同一个仓库也不用在两个仓库中麻烦,个人倾向于放在不同的仓库中,但是这里使用的是第二种方式
1. 建立hexo
博客分支
将上面提到的仓库pull
到本地,使用命令git branch hexo
新建分支hexo
, 切换到分支hexo
这里说一下,hexo
只能init
空文件夹,官方建议如有需要,将文件复制到指定文件夹
所以我们将之前的blog
文件夹中的内容复制到这个分支中,然后添加、提交。同时也建立同名的远程分支,命令git push origin hexo:hexo
,这样就建立了远程hexo
分支,并将本地hexo
的内容push
到了远程分支hexo
中。
2. 发布博客
知道原理就很简单了,本地hexo
分支对应远程hexo
分支,master
分支对应远程master
分支,我们在hexo
分支中管理hexo
博客网站,master
则是实际的博客文件。具体想怎么操作,都可以的。
四、将博客同步到个人服务器
这一步并没有做,不过实际上,可以直接将仓库pull
到个人服务器,使用nginx
反向代理
后话
在写这篇文章的过程中发现,gitee
提供了另一种方式,可以在配置gitee pages时,选择部署目录,那么可以不用建立分支,直接将整个hexo
项目发布到一个分支中,只将public
目录作为博客部署
参考文章
使用 Hexo + Github 或 Gitee 搭建个人博客
hexo d后 ERROR Deployer not found: git