Hexo 实战
- Mac 搭建环境之安装node&npm
推荐安装安装nvm来管理Node版本
- 安装nvm
1 | $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash |
- 安装node和npm
1 | $ nvm install <version> |
- 安装Hexo-ci
1 | $ npm install -g hexo-cli |
- 将镜像设置为淘宝镜像
1 | $ export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node |
- Hexo 写文章的常用命令
- 新建文章
1 | $ hexo new "title" |
新建一个文章, 标题为title
- 本地预览
1 | $ hexo server |
- 文章部署
1 | $ hexo deploy |
- 清除缓存
1 | // 清除缓存文件 db.json 和已生成的静态文件 public |
- 生成静态文件
1 | $ hexo generate |
生成网站静态文件到默认设置的
public
文件夹。
- 生成About Me
1 | $ hexo new page aboutme |
新建一个标题为
aboutme
的页面,默认链接地址为主页地址/aboutme/
- 新建草稿箱
1 | $ hexo new draft "draft_title" |
source目录下回有一个_drafts文件目录, 这里有左右的草稿文件draft_title
- 写好了草稿, 在不发布的情况下预览
1 | $ hexo server --draft |
- 发布草稿
1 | $ hexo publish "draft_title" |
_drafts目录里的b.md不见了, 跑到了_posts里面, 草稿发布成功了
- Hexo 多终端同步方案
需求场景: 需要在公司或者家庭多个电脑完成Hexo的博客撰写和发布工作。这就涉及到Hexo多电脑的同步问题。
- Hexo 私有仓库创建
创建一个私有git仓库,平台任选, github&coding等都可以
- 建立本地git仓库
进入你现有的Hexo文件夹,删除第三方主题的git配置,如对next
主题
1 | $ rm -rf ./themes/next/.git |
建立本地的仓库
1 | $ git init |
编辑.gitignore文件
1 | .DS_StoreThumbs.dbdb.json*.lognode_modules/public/.deploy*/ |
- 本地仓库关联到私有仓库
1 | $ git remote add origin https://git.coding.net/<yourname>/Hexo-my.git |
至此,就完成了本地Hexo源码的全备份
请自觉传送到你的另外一台终端上进行写作, 必要条件: node/npm/hexo/git 工具的安装
这里假装你都已经安装好了
- Hexo 拉取
1 | $ git clone https://git.coding.net/iforvert/Hexo-iforvert.git |
这样你就拥有了你的所有Hexo源文件
- Hexo部署
特别提醒:
尽管拉取下来了,还需要建立一下Hexo的环境,这里需要格外注意的一点是:
千万不要用hexo init
命令。原因是当前目录已经建立了git仓库环境,hexo init
会覆盖到当前的git环境,重建一个新的,这样和我们的私有Hexo源码仓库脱离了联系。
正确的做法是
1 | $ npm install |
因为package.json
里面已经保存了hexo
的必备资源包信息,npm install
后Hexo环境就建立起来了。
- Hexo 编写和发布
自行穿越到文章顶部, 完成文章的创建, 生成, 预览, 发布等过程, 这里不做赘述.
- 同步到私有库
流程如下:
1 | $ git status |
- Hexo 仓库更新
1 | $ git fetch --all |
将git上所有的文件拉取到本地并覆盖本地(以远端为准)
1 | $ git reset --hard origin/master |
reset 对所拉取的文件不做任何处理,此处不用 pull 是因为本地尚有许多文件,使用 pull 会有一些版本冲突,解决起来也麻烦,而本地的文件都是初始化生成的文件,较拉取的库里面的文件而言基本无用,所以直接丢弃。