曾几何时,自己动手做一个博客的想法愈加强烈,想在里面放一些更多除了技术之外的东西,比如烹饪的美食,比如PVP的视频,比如拍摄的照片,比如篮球足球的评论。在这种需求下,我从众多博客框架里面选择了hexo,原因就是“很多人都推荐hexo”....(囧)于是乎我在windows里搞一个,由于我在公司的网络是可以跨越长城的,所以搞github有一点天然的优势。而且github的博客不用花钱搞域名,他直接免费提供...


在搞github的时候墙裂推荐各位去用命令行,有linux的基本基础就可以很熟练的使用命令行搞github, 它的客户端真的不如命令行好用。


准备工作

先去注册一个github,然后去https://git-scm.com 上下载一个最新的git windows的客户端,我下载的是2.15.1版本,如图:

image.png


下载完毕之后,就把这个exe文件安装,然后在“开始”里找到git再打开“Git Bash”,我的github账号是RorschachChan,电子邮件也已经配置过,所以现在就在这个bash窗口里写入如下语句:

1
2
$ git config --global user.name  "RorschachChan"
$ git config --global user.email  "chenx1242@163.com"

image.png


上面git config --global 参数,表示你这台机器上所有的Git仓库都会使用这个配置。


再去https://nodejs.org/en/download/ 上根据自己windows的情况,下载最新的nodejs,

image.png


下载完了之后就一路next,然后需要退出重进一下git bash,在bash的命令行里输入$node -v,看到版本号就是OK,同时输入node,$会变成>,然后输入.exit就可以退出返回到bash。

image.png


然后就是安装hexo,hexo的安装比较简单,就是在git bash里输入$ npm install -g hexo-cli $npm install -g hexo,然后需要等待一会,如果出现了“npm ERR! ”不要怕,重新输入一次应该就会好了,安装完毕之后,输入$ hexo -v查看hexo的版本,如图:

image.png

image.png


然后建立一个github ssh密钥,在git bash里输入$ ssh-keygen -t rsa -C "你的邮箱",然后告诉密钥生成的路径(下图黄框)以及会让你输入对应的口诀(红色箭头),这个口诀很重要,要妥善保存,如图:

1.png


这个密码会在你提交项目时使用,如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。这时候去C:\Users\33664\.ssh的路径里就会看到一对钥匙,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

image.png


来到github的个人配置里,选择“SSH and GPG keys”,然后输入title和id_rsa.pub的内容,点击“add ssh key”。如图:

image.png


准备工作的最后一步,就是建立一个文件夹,我的文件夹建立在E盘下,名字就叫hexo。


开始搭建博客

首先在git bash里进入/e/hexo,然后输入$hexo init,这个命令是初始化命令,再输入$hexo -g来生成静态文件,执行之后,hexo就会在public文件夹生成相关html文件,这些文件将来都是要提交到github上你的用户名.github.io的仓库上去的。然后可以输入$hexo s来启动hexo,这个时候跑到浏览器里输入localhost:4000 就会看到hexo博客最初的一个样子,如图:

image.png


这个默认的主题比较难看,我们去https://github.com/iissnan/hexo-theme-next 下载最近一个比较火爆的主题next,并且把这个下载到hexo文件夹里的themes/next里,语句是: $ git clone https://github.com/iissnan/hexo-theme-next.git themes/next

image.png


然后打开hexo文件夹里的_config,把原有的theme注释,换成新的next,注意,中间是有空格的!

1
2
#theme: landscape
theme: next


然后$ hexo clean$ hexo g清除 Hexo 的缓存和重新生成静态文件,再次$ hexo s启动进程,来到浏览看一下发现博客的样子就变成下面的样子了:

image.png


这个看上去就简单大方很多了吧。


把博客上传到github

现在有人问了,这个博客看上去好像很美,但是有两个致命的缺陷:第一,内容都是在我的windows里,如果我这个电脑坏了/出差/换新硬盘,那么如何保证我以前文件?第二,我启动进程需要执行$ hexo -s,如果我电脑关机了,岂不是博客无法打开?


需要解决就要把磁盘上的内容传递到github库里了,同时github是常开进程的,这样既可以更新我们的内容又不会关闭博客进程,除非github这个网站黄了。


先去github网站去建立一个库(repository),这里我直接选择了公共读,如图:

image.png

然后在hexo文件夹里面,修改一下_config.xml的几个地方:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Site
title: 石锤淡啤酒     #这个是网站在标签页的标题
subtitle: 生活就是等待戈多     #这个是副标题
description: 这里记录的不只有代码,还有生活和思想!     #这里也可以写网站的关键词,也可以矫情的写点别的
author: Chris Chan     #这个作者会在网页最下面显示
language: zh-Hans     #这里表示简体中文
timezone:
 
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
   type : git
   repository: git@github.com:RorschachChan /RorschachChan .github.io.git     #这里写的就是刚刚申请的库名
   branch: master


建立完库以及修改保存了_config.xml之后,我们执行一句$ hexo d部署命令,在执行的时候需要输入当时你建立id_rsa时候的口诀,刚刚申请的那个口诀不会这么快就忘了吧。

image.png


返回到github的网站就看到hexo里所有的内容都上传到了github网站里了,如图: 

image.png


在浏览器里输入“https://你的用户名.github.io”,就看到了博客界面:

image.png


同理,如果你的github用户名是test,建立的是test.github.io的仓库(必须是你的用户名,其它名称无效),将来你的网站访问地址就是 http://test.github.io 了,每一个github账户最多只能创建一个这样可以直接使用域名访问的仓库。


至此,建立一个博客demo就到此结束了!



参考资料:https://baoyuzhang.github.io/2017/04/28/【Hexo搭建独立博客全纪录】(一)使用Git和Github/

参考资料:https://github.com/iissnan/hexo-theme-next 

参考资料:http://opiece.me/2015/04/09/hexo-guide/ 

参考资料:http://shenzekun.cn/hexo的next主题个性化配置教程.html 强烈推荐这篇文章,可以让你把next主题的博客做的更加漂亮!