hexo 从零搭建全过程

hexo 搭建 blog 完整演示

前言

由于我自己的电脑其实搭建之前就有了各种环境,我也不记得啥时候安的了,稀里糊涂搭建好了,中间遇到了许多问题,这里我从头完整的整理一遍。

本篇博客包含的内容如下:

  1. 安装git

  2. 安装NodeJs

  3. 配置环境变量

  4. 安装hexo

  5. 部署项目并连接

  6. 使用hexo

  7. 我遇到的一些问题

1.安装 Git Bash

我用的是windows环境

  • 下载地址:Git for Windows
  • 安装步骤:打开下载好的安装包,一路next,我不记得安装的时候是不是有添加到环境变量选项了,如果有记得选上,大概是 “add to path” 这样的选项,如果没选我后面会说到环境变量的意义和添加方法。后文每个软件安装都会涉及环境变量的问题,就不提了。
  • 检测安装是否成功:在命令行输入 git version 返回git版本则安装成功

2.安装 NodeJs

Hexo 是基于NodeJs 的静态博客,而且安装 NodeJs 后自带的 npm 工具在后面下载 hexo 时会用到。

  • 下载地址:Node.JS
  • 安装步骤:一路next的过程中一样注意环境变量的问题,这样就不用后期自己配了
  • 查看版本命令:node -v

3.配置环境变量

什么是环境变量?百度百科给的解释是 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。

我们要配置的是Windows中的PATH环境变量 (PATH 中罗列出 shell 输入的执行命令所在的目录)

我对PATH环境变量的理解是,当你在命令行输入一个命令时,系统会自动从C盘的system文件夹下寻找这个命令,如果没有找到,就会从你设置的PATH环境变量中的文件夹下寻找,所以设置环境变量可以让你更方便地在任何目录下使用你安装的软件命令。

那么如果安装时忘记添加PATH了,怎么手动配置呢?

右击我的电脑 –> 属性 –> 高级系统设置 –> 环境变量,然后对Path变量进行编辑,点击右侧的新建选项,这时左侧的变量列表会出现新的空栏,在空栏中输入你要配置的文件目录,应用后重启命令行即可生效。

4.安装 hexo

好了!该下的都下完了,该配的也配完了,这时可以直接使用npm工具安装hexo了。

  • 安装命令:npm install -g hexo-cli

等待安装完成,如果安装完成后你找不到安装的位置,可以输入 npm config get prefix 命令得到默认安装路径,然后把这个路径添加到环境变量中

  • 查看版本命令:hexo -v
  • 初始化:新建一个空文件夹作为本地blog目录,命令行切换到该目录下执行 hexo init 进行初始化,初始化后文件夹内会生成一些初始化的文件,稍后会讲解其中要使用到的文件作用。

5.部署项目并连接

接下来,在 Git hub 上创建项目并使本机能连接到 Git hub 上

  • 创建一个repo,项目名称为 yourname.github.io (yourname 就是你的git hub用户名),其他配置使用默认即可

  • 回到本机git bash中配置git hub账户信息,依次输入如下几条命令:

    git config --global user.name "yourname"

    git config --global user.email "youremail"

  • 创建SSH命令

    ssh-keygen -t rsa -C "youremail@example.com"

    该命令生成 ssh 密钥,会生成两个文件,一个是私钥,一个是公钥,我们要用到结尾是 .pub 的公钥

    将得到的公钥文件用记事本打开,把内容复制下来,在git hub上settings中的SSH and GPG keys中新建一个SSH key,title栏随便取名,key栏把刚才复制的内容粘贴进去即可。

  • 在 git bash 中验证是否成功

    输入 ssh -T git@github.com 命令验证是否添加成功

    成功连接你就可以进行下一步了

6.使用 hexo

  • 在使用之前先用编辑器打开你blog项目文件夹下的_config.yml文件修改一些配置,添加下面这些配置,其中YourgithubName换成你自己的:
1
2
3
4
deploy:
type: git
repo: https://github.com/YourgithubName/YourgithubName.github.io.git
branch: master
  • 回到git bash中,进入你的blog目录,分别执行以下命令:

    1
    2
    3
    hexo clean
    hexo g
    hexo server

    打开浏览器输入 localhost:4000 你就可以在本地看到你blog的样子了

  • 接下来可以新建一篇博客并推到git hub上去

    hexo new "name" 命令新建博客,输入该命令后会在你的blog文件下source/_posts目录下生成一个markdown文档,你可以在这个文档中添加博客内容

    hexo g命令生成博客内容

    hexo d命令将博客推上去

如果成功了,就可以在浏览器中输入 http://yourgithubname.github.io 看到你的个人博客了

7.我遇到的一些问题

在搭建过程中我遇到了两个问题

我遇到的第一个问题是执行hexo g命令后生成的是空的,然后推也推不上去

我的解决方法是修改根目录下的 _config.yml 配置文件 修改deploy 节点

原来我们添加的配置为

1
2
3
4
deploy:
type: git
repo: https://github.com/YourgithubName/YourgithubName.github.io.git
branch: master

修改为如下

1
2
3
4
deploy:
type: git
repo: https://yourname:yourpassword@github.com/YourgithubName/YourgithubName.github.io.git
branch: master

且要注意每个配置选项的冒号后面要有一个空格,要严格参照规定格式

我遇到的第二个问题是SSH连接不上,原来在生成SSH密钥的时候,提示输入生成的文件名,我为了方便把它生成到D盘下新建的一个文件夹中,并且改了名字。但在进行SSH连接的时候,好像会默认到你的C盘 C:\Users\user\.ssh 目录下寻找 xx_rsa 密钥文件,所以我把两个密钥复制到了这个目录下并更改了文件名分别为:id_rsq 和 id_rsa.pub 就可以成功连接了。

如果你没遇到相同的问题就不用做以上修改,在配置的过程中可能会出现千奇百怪的问题,希望你第一次遇到问题时先去google搜索一下,可能相同的问题已经被解答过许多次了。