一、本地搭建

  1. 配置环境
  • 安装Git

(点击进入Git官网,如果嫌下载慢自行百度解决~)

  • Git与远程库进行SSH授权(因为需要部署到GitHub)

(点击查看教程Git的安装-与远程仓库GitHub配置)

2.本地博客

  • 安装hexo

任意位置右键git bash输入(npm命令即可安装)

npm install -g hexo-cli
  • Hexo建立网站所需要的所有文件

创建一个文件夹,在文件夹内执行命令

hexo init
npm install
  • 准备启动本地博客(可选)

继续执行命令

hexo s
会出现出现这些内容:
INFO Start processing
INFO Hexo is running at http://localhost:4000.Press Ctrl+C to stop.

打开浏览器,在地址栏中输入 http://localhost:4000/ 就可以访问本地blog了,Ctrl+C可以退出本地访问

二、远程部署Github

  1. 创建用于上传博客的仓库

项目名称为:你的名字 + .github.io

  1. 部署

修改hexo的文件夹下的_config.yml文件 【注意:冒号后有空格】

deploy:
type: git
repository: github仓库地址

在hexo文件夹右键git bash输入

hexo g
hexo d
  1. 可启动博客

网址:https://yourname.github.io

参考如下:

三、博客备份

前言

  • 该操作不是下载安装使用hexo所必须的,但是提前操作以防万一
  • 遇见如下突发情况:例如:多台电脑操作hexo/原先hexo所在电脑重装系统/要将hexo移动到其他磁盘,提前上传都可以让我们恢复对hexo像往常一样的使用
  • 机制:也就是将hexo源码做备份,存在GitHub上。之前在GitHub上的部署(使用hexo d上传部署到github)其实是hexo编译后的文件,是用来生成网页的,不包含所有hexo生成的网站原始文件。也就是上传的是在本地目录里自动生成的.deploy_git文件夹内容,而没有其他内容。我们可以通过git的分支管理实现hexo分支存放网站全部的原始文件,另一个存放生成的网页文件
  1. 网站的github仓库创建分支

img

将其设置为默认分支

img

  1. 打包将要推送到GitHub上的原始文件
  • clone该仓库到本地(clone的是hexo默认分支)
git clone git@github.com:Rainbow0526/Rainbow0526.github.io.git
  • 下载的文件夹里仅留下.git 文件夹,其他的文件都删除

  • 找见我们hexo原位置,将hexo文件夹内除.deploy_git 以外都复制到clone下来的文件夹中

注意:

  1. 现在clone下来的文件夹内应该有个.gitignore文件,用来忽略一些不需要的文件,表示这些类型文件不需要git。如果没有,右键新建,内容如下:

    .DS_Store
    Thumbs.db
    db.json
    *.log
    node_modules/
    public/
    .deploy*/
    1. 如果已经clone过主题文件,那么需要把theme主题文件夹里的 .git 也删除。因为git不能嵌套上传,最好是显示隐藏文件,检查一下有没有,否则上传的时候会出错,导致你的主题文件无法上传,这样你的配置在别的电脑上就用不了了。鱼干已经设置了fluid主题,由于hexo主题设置的文章网上比较多,操作也相对容易,没有写随笔。所以小鱼干需要删除路径D:\myapp_EName\hexo\themes\fluid下的 .git 。
  1. 将clone并修改以后的文件夹推送到远程库
git add .
git commit –m add_branch
git push

此时已经成功将整个网站推送到了远程库的默认分支hexo。后续写文章、修改配置后的保存推送操作按下面继续就好啦。

  1. 定期push网站源文件备份

至此,网站部署至master分支,整个网站备份至hexo分支。当网站的配置或文章修改后都要将远程仓库更新。首先,依次执行

git add .
git commit -m ChangeFiles(更新信息内容可改)
git push  (或者git push origin hexo)

保证hexo分支版本最新。然后执行

hexo d -g

(在此之前,有时可能需要执行hexo clean),完成后就会发现,最新改动已经更新到master分支了,两个分支互不干扰!

注意:换到不同电脑上时,首先拉下 github 上的 hexo分支的更新:

git pull origin hexo

参考文章链接如下:

参考资料1:https://www.zhihu.com/question/21193762/answer/489124966

参考资料2:https://www.jianshu.com/p/0b1fccce74e0

四、博客恢复

  1. 配置环境
  1. 配置本地博客
  • 安装hexo
npm install -g hexo-cli

安装好后不需要初始化(hexo init)

  • 克隆GitHub上保存的hexo网站原文件
git clone git@github.com:Rainbow0526/Rainbow0526.github.io.git
  • 生成缺少的网站文件。进入克隆的目录,执行:
npm install
npm install hexo-deployer-git --save

因为上传GitHub时有.gitignore文件,所以上传到github上默认是忽略掉 node_modules等文件夹,即仓库的hexo分支并没有存储这些文件,所以需要install生成。

  1. 生成、部署(推荐)
hexo g
hexo d

刚恢复本地hexo最好生成部署一下,接下来就像以前一样了。

参考资料1:https://www.zhihu.com/question/21193762/answer/489124966

参考资料2:https://www.jianshu.com/p/0b1fccce74e0