mac+github+hexo--搭建个人博客

1. 创建github账户

根据创建github技术博客全攻略创建github账号。

2. 安装hexo

安装hexo需要安装nodejs。这里采用homebrew方式安装。所以安装顺序为homebrew-> nodejs -> hexo -> git

2.1 安装homebrew

homebrew安装起来相当简单,在shell中输入以下命令:

1
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2.2 安装nodejs

用homebrew安装,一句话搞定

1
brew install node

2.3 安装git

依然采用homebrew安装

1
2
3
4
5
6
brew install git


//配置git
git config --global user.name "***"
git config --global user.email "***"

2.4 配置ssh

1
ssh-keygen -t rsa -C "***@***.com"

将新生成的ssh key添加到github上

1
登录github->Account Settings -> SSH Public Keys -> Add another key: 将id_rsa.pub文件的内容拷贝到输入框中

测试连接

1
ssh git@github.com

测试nodejs和git是否安装成功

1
2
3
4
5
6
git --version
//git version 2.6.2
node -v
//v4.2.1
npm -v
//2.14.7

如果出现版本号表示安装成功

2.4 安装hexo

1
npm install -g hexo-cli

接下来简历个人博客目录。进入到用户主目录,在用户主目录或者子目录中建立博客目录。最好不要在系统根目录中建立,权限管理比较麻烦。

1
2
3
4
5
~ user$ mkdir blog
~ user$ hexo init blog
~ user$ cd blog
//安装必要的插件
~ user$ npm install

进入到blog文件夹,可以发现该文件夹下有很多文件,其中_config.yml文件是博客页面的配置文件,source文件夹用来放我们的页面.md文件, themes文件夹用来放博客的主题,可以从网上下载markdown博客主题

2.4.1 配置_config.yml文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
//我的配置文件
# Hexo Configuration
## Docs: http://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/

//这里需要做些更改,注意冒号之后有空格,否则会出错
# Site
title: Ping Li's Blog
subtitle: Love the Life You Live
description: Life Record
author: Ping Li
language: zh-cn
timezone:

# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://yoursite.com
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:

# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: archives
category_dir: categories
code_dir: downloads/code
i18n_dir: :lang
skip_render:

# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link: true # Open external links in new tab
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
highlight:
enable: true
line_number: true
auto_detect: true
tab_replace:

# Category & Tag
default_category: uncategorized
category_map:
tag_map:

# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## http://momentjs.com/docs/#/displaying/format/
date_format: YYYY-MM-DD
time_format: HH:mm:ss

# Pagination
## Set per_page to 0 to disable pagination
per_page: 10
pagination_dir: page

//用来更改博客主题
# Extensions
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme: yilia

// 配置发布形式,发布到github上
# Deployment
## Docs: http://hexo.io/docs/deployment.html
deploy:
type: git
repository: git@github.com:PingLinju/PingLinju.github.io.git
branch: master

2.4.2 切换主题

可以在网上找到很多主题,通过git下载下来,然后将_config.yml配置文件中的theme字段改成下载的主题即可。

1
git clone https://github.com/wuchong/jacman themes/jacman

//修改_config.yml文件中的theme字段
theme: jacman

//每次做完修改都要讲修改同步到github上
hexo g
hexo d

可以进入到主题的_config.yml文件对主题进行配置

2.4.3 编写博文,发布到github上

1
2
//该命令会在blog/source/_posts文件夹中生成一个.md文件,该文件既是我们的博文
hexo new "New Post"

进入到blog/source/_posts文件夹下,用markdown编辑器编辑新生成的.md文件,即撰写我们的博文。撰写完之后就可以发布到github上

1
npm install hexo-deployer-git --save
//部署到github上
hexo g
hexo d

完成之后,就可以在浏览器中输入用户名.github.io即可查看博文。