Hexo+Github搭建个人博客手记

Hexo是一个快速、简介、高效的静态博客框架,让多个页面在几秒内瞬间完成渲染。Hexo基于Node.js,支持Giithub,可以整合Octopress等大多数插件,并自己也拥有强大的插件系统.

准备工作

安装Node.js

Hexo是基于Node.js的,需要首先安装npm工具,这个工具是Node.js安装包的工具,所以我们要首先安装Node.js.
使用apt-get安装Node.js:

$ sudo apt-get install -y nodejs

安装npm

$ sudo apt-get install npm

使用npm安装Hexo

$ sudo npm install hexo-cli -g

创建博客

1、 Node和Git都安装好以后,在本地目录下建一个文件夹,如:MyBlog,进入该目录并安装Hexo.

$ sudo npm install -g hexo

2、 初始化以后,执行init初始化命令:

$ hexo init

3、 生成静态页面命令:

$ hexo generate(hexo g也可以)

4、 本地预览,进行文章预览调试,命令如下:

$ hexo server     (hexo s也可以)

浏览器输入 http://localhost:4000 即可。
5、 一些常用命令

hexo new "postName"   #新建文章
hexo new page "pageName"   #新建页面
hexo generate   #生成静态页面至public目录
hexo server   #开启预览访问端口(默认端口4000,'ctrl + c'关闭server)
hexo deploy  #将.deploy目录部署到GitHub
hexo help   #查看帮助
hexo version  
Hexo如何让文章想只显示一部分和一个"阅读全文"的按钮:在文章中加 <!--more-->

Github设置

  1. github账号注册
    Git是一种良好的、支持分支管理的代码管理方式,能很好地解决团队之间协作的问题。每个工程师在自己本地分支上开发,完成功能之后再将所有人的代码合并。
    这个大家应该都有,没有的话就去注册一下吧! Github地址:https://github.com/

  2. 创建Name仓库
    建立与你用户名对应的仓库,仓库名必须为[your_user_name.github.io],如图所示:
    image

  3. 配置和使用github
    如果用过Git的话,这一步就可以忽略了。没有用过的,下边可要认真看了。

3.1 首先需要检查你电脑是否已经有SSH key,运行 git Bash 客户端,代码如下:

$ cd ~/.ssh
$ ls

检查是否已经存在id_rsa.pub或id_dsa.pub文件,如果文件已存在,那么可以跳过步骤2,直接操作步骤3。

3.2 创建一个SSH key,这里请注意:你需要把邮件地址换成你自己的邮件地址

$ ssh-keygen -t rsa -C "your_email@example.com"

代码参数含义:
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名。

以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的SSH key代码,以下会出现三次提示:
第一次提示,生成两个密钥,直接回车选择默认文件名( id_rsa 和 id_rsa.pub );
接下来两次提示,输入密码和确认密码,是push文件时候的密码,当然也可不输入密码,直接回车。代码如下所示:

Generating public/private rsa key pair.
# Enter file in which to save the key (~/.ssh/id_rsa): [Press enter]

Enter passphrase (empty for no passphrase): 
# Enter same passphrase again:

当你看到下面这段代码的时候,那就说明,你的SSH key已经创建成功,你只需要添加到github的SSH key上就可以了。

Your identification has been saved in ~/.ssh/id_rsa.
# Your public key has been saved in ~/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com

3.3 添加你的 SSH key 到 github上面去.首先你需要拷贝 id_rsa.pub 文件的内容.也可直接使用命令行来复制:
Mac下:pbcopy < ~/.ssh/id_rsa.pub
Windows下:clip < ~/.ssh/id_rsa.pub

$ ~/.ssh/id_rsa.pub

登陆Github,
打开个人 Settings-->SSH keys-->Add SSH key,
Title 随便写,
Key 粘贴之前复制的内容,
这样 SSH key 就添加的 GitHub。

3.4 检测SSH key是否可以访问Github,命令如下:

$ ssh -T git@github.com

当你输入以上代码时,会有一段警告代码,如:

The authenticity of host 'github.com (207.97.227.239)' can't be established.
# RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
# Are you sure you want to continue connecting (yes/no)?

这是正常的,你输入 yes 回车既可。如果你创建 SSH key 的时候设置了密码,接下来就会提示你输入密码,如:

Enter passphrase for key '~/.ssh/id_rsa':

当然如果你密码输错了,会再要求你输入,直到对了为止。
注意:输入密码时如果输错一个字就会不正确,使用删除键是无法更正的。
密码正确后你会看到下面这段话,如:

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

如果用户名是正确的,你已经成功设置SSH密钥。如果你看到 “access denied” ,者表示拒绝访问,那么你就需要使用 https 去访问,而不是 SSH 。

3.5 设置Git全局用户配置,这一步不是很重要,但是如果与之前所有的git账户不一致,Github会要求必须声明的。

$ git config --global user.name "xxx"
$ git config --global user.email "xxx@gmail.com"

部署

1、 打开Hexo博客目录下的_config.yml,推荐使用VS code,尽量不要用记事本打开,可能会出现乱码(如果出现乱码,一定要用编辑器将文件编码格式改为:UTF-8)。repo: 找到自己对应的仓库,branch选择主分支.

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

2、 通过shell命令找到Hexo所在的目录(这里我的是:MyBlog),安装hexo-deployer-git部署所需要的插件,命令如下:

$ npm install hexo-deployer-git --save

3、 清除public目录下的缓存文件,文件生成后立即部署网站,部署之前预先生成静态文件

$ hexo clean && hexo g && hexo deploy

4、 在浏览器输入https://sweetheartly.github.io/, sweetheartly是个人github的名字,如图所示:
image

好了,到这里就结束了。如果你有什么疑问或指正,请留言。

参考文档: https://www.liaoxuefeng.com => Git教程
参考文档: http://blog.csdn.net/binyao02123202/article/details/20130891
参考文档:http://www.jianshu.com/p/21234432c94e

原文地址:https://www.cnblogs.com/sweetheartly/p/9439848.html