简单的回忆一下Hexo的部署过程和一些常用的指令

需要用到的工具

  • Git
    内容管理工具

  • Node.js
    JavaScript 运行时环境

  • Hexo
    静态博客框架

  • Github
    代码托管平台

搭建步骤

  • 首先安装Git、Node.js。Node.js安装时后面最好勾选上Add to path(重启生效),不然会导致环境变量不生效。

  • 然后便可以在自己的设备上选择喜欢的路径,然后在所选路径里,左键选择Git Bash Here,打开Git界面。

  • 使用命令安装Hexo

1
2
3
4
5
npm install hexo-cli -g   //安装全局Hexo

hexo -v //查看是否安装成功

hexo init //安装Hexo文件
  • 完成上述步骤Hexo就在本地部署好了,我们来检验一下吧!
1
2
3
hexo generate  //生成Html静态页面,简写 hexo g

hexo server //启动本地服务,简写 hexo s

进行访问。

好了,Hexo博客在本地就正式运行了,使用Ctrl+c可以中断本地服务。

部署到托管平台

  • 搭建博客大概率不是想放在本地了,这时候就需要服务器就行托管。

  • Hexo是特别轻量的静态框架,我们只需要很小的服务资源来处理它。

  • 这里拿Github举例。

    首先我们需要,Github与本地建立联系,怎么实现呢?我们需要在本机生成秘钥,配置到我们的Github仓库上,

    然后需要在本地找到我们存放Hexo博客的地方,在Hexo的配置文件**_config.yml**中添加我们的仓库地址,

    这样Github与本地就建立起了联系,我们只需要再借助一个上传插件便可以了。

1
npm install hexo-deployer-git --save //它能帮助我们快速的上传我们在本地进行的部署
  • 做完这些我们就可以上传文章,并在网络上访问我们的博客了。

  • 上传前的准备:

1
2
3
hexo clean     //清除缓存 简写 hexo c  对一些配置文件进行修改后最好进行一次清除
hexo generate //生成静态文件 简写 hexo g 写完文章需要运行一次 生成静态文件 不然 直接Hexo d 会导致错误
hexo deploy //把博客文件上传到Github 简写 hexo d
  • 注意执行以上命令需要在你Hexo博客文件根目录执行

  • 补充: 在创建仓库时,仓库名的格式是Github用户名.github.io

  • 比如我的Github用户名是zihanla,则我的仓库名需要命名为:zihanla.github.io

  • 因为只有这样github page 才能识别到并给你分配域名,后期可以在博客仓库Setting-page里面进行自定义域名

图片资源的处理

这里我就着懒散劲,把我写一下如何我博客的图片等资源处理。

  • 我们可以在Github上创建一个仓库

  • 然后通过git clone 创建的仓库地址拉取仓库文件到本地

1
2
git clone https://github.com/Github用户名/仓库名.git //github.com后需要填写自己的内容

  • 接着把需要上传的图片等资源,放进你拉取在本地的文件里面(这里个人建议简单分类一下)

  • 上传本地文件到Github仓库

1
2
3
4
5
6
7
8
// 添加全部内容文件到暂存区
git add .

// 添加说明
git commit -m'随便写'

// 提交到远程仓库
git push
  • 这样文件就处理好了,这里我们可以借助JSDelivr进行加速访问

使用方法:

  1. https://cdn.jsdelivr.net/gn/Github用户名/仓库名/需要访问的文件路径

Eg: 我的用户名zihanla 我需要访问我 仓库cdn/tk/img/logo.png的图片只需要这样写:

https://cdn.jsdelivr.net/gh/zihanla/cdn/tk/img/logo.png 即可访问我这个图片

这里不建议在仓库名后加@版本号,因为如果这样每一次上传文件都需要进行发布,省略@加版本号则默认获取最新版。

  1. Github 上有软件上传和网页上传的项目(我比较喜欢手动的过程,就不写这些方式了)
  • 这里再补充一个我在上传时候需要的问题和解决方案

我在github上修改了README.md但是本地端没有进行拉取,然后上传文件就error了。

这里的话建议把仓库再次拉取一下到本地,覆盖本地的README.md文件,然后就可以正常上传了。

也可以git push -f上传,不过这样的话,你的README.md就被本地的给覆盖了,你写的内容也就…..

结论

因为没人康我的博客,我也就没有专门去做图片,毕竟现在网上教程那么全面,我只是揪出一部分,给自己康康哈,自己能康懂就行了。