亲身经历使用Github & Hexo搭建博客

折腾,真的是折腾……虽然使用github创建博客的教程在网上有很多,但是和往常一样,我遇到的问题他们几乎遇不到……
所以还是把这个经历写下来,免得今后重装系统或者换电脑的时候再走老路。

准备工作

Git环境

推荐的当然是Github官方的客户端软件,这一点就不多说了。

Nodejs

这个环境我之前装过,记得好像还挺简单的,具体的步骤去网上查吧。
懒,不想写了……

Hexo

Hexo 是一个快速、简洁且高效的博客框架。Hexo使用Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
参考:
Hexo文档
安装步骤在上面的链接中讲的很详细,这里就不做赘述。但是有一点不同的是,考虑到以后我可能会在其他电脑上维护博客,所以我希望在其他电脑上配置环境的过程不至于太复杂。网上很多的人的做法是将Hexo的源码托管在Github上,我采取的也是这种方法。
下面是具体步骤:

配置Github

  1. 在自己的Github上建立和自己用户名对应的仓库(Repository),仓库名为your_user_name.github.io,将your_user_name换成自己的Github用户名。
  2. 然后建立一个新分支hexo,并将其设为默认分支(default branch),意味着现在该仓库下有两个分支:hexo(default)和masterhexo用于存储博客源码,master用于存储生成的静态页面,我们只需要日常维护hexo分支中的内容即可,master中的内容是由Hexo自动生成,把它放在Github上就好。
  3. 登录自己的Github客户端,打开Git Shell,为了让本地的Git项目与远程的Github建立联系,在命令行中输入:

    ssh -T git@github.com
    

    直到最后终端显示:

    Hi username! You've successfully authenticated, but GitHub
    does not provide shell access.
    

    表明SSH已经配置成功!

配置Hexo

  1. 将前面建的仓库中的hexo分支clone到本地文件夹中,相应的git命令是:

    git clone -b [branch name] [your Repository link] [target path]
    

    对于我来说就是:

    git clone -b hexo https://github.com/duanyj95/duanyj95.github.io F:\duanyj\Documents\GitHub\duanyj95.github.io\hexo
    
  2. 安装Hexo,命令行进入刚才clone到的文件夹下,输入以下命令:

    npm install -g hexo-cli
    
  3. 部署Hexo,同样目录下命令行中输入:

    hexo init
    

    提示成功后则Hexo部署成功!此时在该文件夹下已经有建立博客所需要的必要文件。以及可能需要安装各种依赖包:

    npm install
    
  4. 与你的Github仓库建立连接,打开hexo目录下的_config.yaml,将相应部分改成下面的样子:

    # Deployment
    ## Docs: https://hexo.io/docs/deployment.html
    deploy:
      type: git
      repo: https://github.com/your_user_name/your_user_name.github.io.git
      branch: master
    

    同样将your_user_name换成自己的Github用户名,注意:冒号后有空格。

  5. 此时可以进行预览,输入:

    hexo generate
    hexo server
    

    进行本地预览,或者输入:

    hexo d -g
    

    打开https://your_user_name.github.io/进行预览(可能有延迟,所以推荐本地预览)。

Hexo使用

  1. 常用的Hexo命令有:

    hexo generate            ---        生成静态页面
    hexo deploy                ---        部署静态页面
    hexo clean                ---        清楚静态页面(缓存)
    hexo server                ---     本地启动
    hexo new page 'name'    ---        新建页面
    hexo new post 'title'    ---     新建文章(可简写为hexo new,此时默认为post模板)
    

    此外,部分命令支持简化:

    hexo g == hexo generate
    hexo d == hexo deploy
    hexo c == hexo clean
    hexo s == hexo server
    hexo d -g == hexo generate and hexo deploy
    

至此,博客的基础搭建已经完成,接下来是对博客进行个性化配置。

个性化博客

未完待续……