很早之前就听说可以通过github pages来搭建博客,但是由于种种原因(就是懒),迟迟没有付诸行动,终于,趁着暑假,开始了我的hexo+github pages 搭建博客的踩坑记,折腾了两天,终于成功搭建好了博客,接下来,开始分享搭建本博客的过程中以及各种坑。。。
用Hexo + Gitpages的原因
- 不用配置服务器
- 不用数据库
- 访问速度相当快
- 没有安全性可言
- 使用户可更注重博客内容
- 支持markdown
还有就是hexo相对来说轻巧一些,生成文章的速度也比较快(静态博客生成页面时都是要整站生成,所以,页面越多,速度就越慢)
从hexo开始
首先本地得装上了node.js、git和hexo
安装git:git
安装nodejs:node.js官网
hexo:hexo官网
hexo使用npm安装(过程如下)
npm install hexo-cli -g
hexo init blog
cd blog
hexo server
然后打开http://localhost:4000/就可以查看效果了。
如果4000端口打不开,可以通过以下命令更改端口访问(改为3000)
hexo s -p 3000
注:Hexo依赖Node.js和Git,需要先安装。
hexo的使用可参详官网文档。
常用命令:
hexo g 生成静态博客,即重新生成public文件夹
hexo s 本地预览调试 (一般组合使用 hexo g && hexo s)
hexo d (发布到github)
hexo n (执行该命令之后在source/_posts目录下产生< blog name >.md文件,这是你的一篇新博客。可以在markdown工具下编写,markdown工具在网上搜有一大堆,比如本博主使用的csdn的markdown工具,具体怎么使用也可以自己百度啦~)
部署到Github
在github上创建一个仓库,仓库必须命名为:你的github账号.github.io
(例如我的账号为Abner0101,所以我的仓库名为:Abner0101.github.io)
配置hexo config.yml,修改Deployment
deploy:
type: git
repo: git@github.com:你的帐号/你的帐号.github.com.git
branch: master
然后执行命令:
hexo clean
hexo g
hexo d
此时,在博客的根目录下会生成一个文件夹:.deploy
然后我们把这个文件夹里面的文件都push到刚才新建那个项目就OK了。几分钟过后,就可以打开:你的用户名.github.io 看到你的博客了。
绑定域名
在项目的根目录,新建名为CNAME的文件,内容为:你的域名,例如我的就是:jdsheng.cn
再到把你的域名指向你的用户名.github.io,几分钟过后,就可以看到成功的诞生了。
NexT主题与第三方服务
我使用的主题是next,在你的博客根目录下gitbash,安装next主题
git clone https://github.com/iissnan/hexo-theme-next themes/next
打开站点配置文件(_config.yml),增加一行:
theme: next
进入themes/next,修改主题配置文件 _config.yml 定位到scheme参数来选择自己喜欢的主题风格:
scheme: Mist
关于next主题更多的配置(添加评论,分享,喜欢,添加头像等功能)可以参考NexT使用文档
关于更换电脑,如何继续写博客
1.将你原来的电脑上已经配置好的源代码项目拷贝到你新的电脑,注意,无需拷贝全部,只需要拷贝一下几个目录:
_config.yml
package.json
scaffolds/
source/
themes/
将这些目录放在一个目录下,例如:blog/
2.在你的新电脑上配置hexo环境:安装git、安装node.js
3.安装hexo,执行命令:
npm install -g hexo
4.安装好之后,在hexo目录下gitbash,执行命令:
npm install
npm install hexo-deployer-git --save
npm install hexo-generator-feed --save
npm install hexo-generator-sitemap --save
5.部署,执行命令:
hexo g
hexo d
在执行第5步时,可能会出错,不知道你们会不会遇到,反正我是遇到了,在部署提交代码的时候出现了这个问题:
*** Please tell me who you are.
Run
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
所以解决方法是当出现这个上述提示后 接着补充
你在命令行中执行
git config --global user.email "你的邮箱"
git config --global user.name "你的名字"
(注意 “ 前面是有空格的)
输入后在接着执行git g、git d即可!