旧历史


放一张老博客的截图,满打满算一共20篇,是在算不上是有什么,希望从这个博客开始能够克服惰性,保持更新。

奥义:复制 粘贴

以前的博客使用的jekyll来做的,虽然上传简单,语法简单,但是这个主题是在是不喜欢,这次使用hexo来搭建新的博客,一个是因为这个主题NEXT看起来很不错,主要是hexo更新起来方便啊!写好文章了,直接一个shell脚本就更新了。

下面写一下这个hexo博客的搭建过程。

因为家里穷,只能用得起免费服务,所以来用Github pages起飞吧。博客具体使用的就是Github Pages服务和hexo

GitHub Pages 可以被认为是用户编写的、托管在 GitHub 上的静态网页。GitHub Pages依托于Github,当然首当其冲的就是免费,不限流量,所以不用说为什么要用了吧。唯一要注意的是由于现在越来越的不法分子使用Github进行不可告人的工作,使Github被墙的可能性越来越大了。

新博客需要用到的东西


  • git 要使用github,不用git命令怎么行。
  • nodejs hexo要使用的引擎,就像py脚本要用python一样。
  • hexo 博客系统。

注:以上所有环境均在linux环境下配置,如果需要windows,怎看Windows下一步步搭建自己的独立博客——使用 GitHub Pages + Hexo 基础教程

nodejs安装请到nodejs处安装。

大型同性交友平台Github


先注册个账号吧

怎么注册Github就不说了吧,来一发新账号的截图。

要使用git命令对github进行操作,首先要让github知道你是谁,这就要使用ssh来进行确权认证,将自己的公钥发给github,让github知道你是谁,这个操作的官方文档

按照官方给的步骤一步一步走,最后会如下图的样子,将你的公钥加入到github你账号的ssh key设置中,并且ssh -T git@github.com时会回显hi,your name

什么,要看中文版,好吧,下面就是。如果看官方文档已经解决了个问题,下面一小节可以不用看。

添加SSH Key给Github

1.检测是否有SSH keys

1
2
$ ls -al ~/.ssh
# Lists the files in your .ssh directory, if they exist

默认的公钥名称有以下几种:

  • id_dsa.pub
  • id_ecdsa.pub
  • id_ed25519.pub
  • id_rsa.pub

2.如果没有SSH keys,则生成SSH keys。

1
2
3
4
$ ssh-keygen -t rsa -C "your_email@example.com"
# Creates a new ssh key, using the provided email as a label
# Generating public/private rsa key pair.
# Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]

因为可能需要看指纹识别码,所以要输入密码,这个密码不是GitHub的密码。

1
2
# Enter passphrase (empty for no passphrase): [Type a passphrase]
# Enter same passphrase again: [Type passphrase again]

接下来输入秘钥的名称,可以自己确定,也可以使用默认的名称。

1
2
3
4
# Your identification has been saved in /Users/you/.ssh/id_rsa.
# Your public key has been saved in /Users/you/.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

将key加入自己的ssh-agent中。

1
2
3
4
# start the ssh-agent in the background
$ eval "$(ssh-agent -s)"
# Agent pid 59566
$ ssh-add ~/.ssh/id_rsa

3.向自己的用户添加SSH key

拷贝公钥到粘贴版。

1
2
$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard

添加公钥到GitHub设置中。

Setting -> SSH keys -> Add SSH key -> 输入公钥和关于此公钥的描述 -> Add key

4.测试连接

命令行中输入:

1
2
$ ssh -T git@github.com
# Attempts to ssh to GitHub

得到这样的输入是正确的:

1
2
3
# 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,就能够连接了,如果连接后得到的结果是:

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

那么连接就成功了,可以在本地连接GitHub了。

Hexo的安装及使用


把Github的相关东西弄好了,下面来进行hexo的安装使用。首先,把nodejs装好,下载地址,这个过程就不多说了,如果是mac,可以直接用brew来装,速度快。

nodejs装好后。

可以在hexo官网上看到hexo的安装有多方便,五行即可看到结果。

1
2
3
4
5
$npm install hexo-cli -g
$hexo init blog
$cd blog
$npm install
$hexo server

运行结果如图

一个hexo的博客就这样运行起来了,至于要怎么变成现在看到的我的博客的样子,请使用hexo的主题Next。Github地址,使用方法地址。这个文档写的特别详细,而且最重要的是它是中文的!中文的!中文的!

把Hexo部署到Github上


创建Github pages仓库

要将博客部署到Github上,首先要创建一个,名字为你的用户名.github.io

给这个库创建一个文件hello.html

1
2
3
4
5
6
7
8
echo "# dclaoshi2014.github.io" >> README.md
echo "Hello World" >> hello.html
git init
git add README.md
git add hello.html
git commit -m "first commit"
git remote add origin https://github.com/dclaoshi2014/dclaoshi2014.github.io.git
git push -u origin master

Github里的文件结构应该是这样的

访问地址 https://dclaoshi2014.github.io/hello.html 得到的网页是这样的。

将hexo部署上去

在前面用命令hexo server启动服务,如果能正确的显示出和上文图片一样的页面,那么就证明了博客运行成功了,就可以将博客内容向上面生成Github Pages空间中部署了。

部署有两种方式:

  1. 直接将hexo生成的静态文件,public目录下的文件add进库中,自然博客就运行起来了。
  2. 配置hexo,使用hexo deploy自动部署。

对第一种方法,这就不说了,去学git怎么把文件添加进现有库就可以了。
第二种方法,配置博客根目录下_config.yml文件,修改最后面的参数

1
2
3
4
5
deploy:
type: git
repository: git@github.com:dclaoshi2014/dclaoshi2014.github.io.git
branch: master
message: blog deploy

里面需要解释一下的就是repository参数,在这个参数中,指定了你要讲博客部署到哪个仓库中,对于这一段配置,可以明确的看到是部署到github下用户dclaoshi的dclaoshi.github.io库。

使用这个功能需要安装hexo-delopyer-git插件,命令npm install hexo-deployer-git --save

在将_config.yml配置好,并且hexo-delopyer-git插件安装后,执行如下命令

1
2
3
4
5
6
# 清楚原来生成的内容
hexo clean
# 生成静态博客
hexo generate
# 提交到github,部署
hexo deploy

最后的截图,运行成功。

后记


这篇博客只是很简单的一个搭建过程,要想做成和现在你正在看的这个博客一样的样子,就要看我前面提过的Next主题,这个主题的文档写的非常详细,官方文档见参考5,所以没有详细写出来。

仅做记录,给我这个坏记性做个备份。

幸甚至哉,歌以咏志。

参考及链接

  1. Github Pages
  2. Hexo
  3. Node.js
  4. Github添加ssh key
  5. Hexo主题Next使用文档