Windows下使用Github页面搭建个人博客Hexo

1.安装Node.js和配置好Node.js环境

1
2
3
4
C:\Users\Administrator>node -v
v8.11.1
C:\Users\Administrator>npm -v
5.6.0

2.安装Git和配置好Git环境,安装成功的象征就是在电脑上任何位置鼠标右键能够出现如下两个选择

注意:一般出于安全考虑,只有在Git Bash Here中才能进行Git的相关操作。如果需要在cmd命令行里调用Git,那么就要配置电脑的环境变量Path,或者在安装的时候选择use Git from the Windows Command Prompt。

1
2
C:\Users\Administrator>git --version
git version 2.16.2.windows.1

3.Github账户注册和新建项目:账户名.github.io。并且需要勾选Initialize this repository with a README


在建好的项目右侧有个settings按钮,点击它,向下拉到GitHub Pages,你会看到那边有个网址,访问它,你将会惊奇的发现该项目已经被部署到网络上,能够通过外网来访问它。

4.安装Hexo,文中目录c:/ossend

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
C:\Users\Administrator>cd c:\ossend
c:\ossend>
c:\ossend>npm install hexo -g
……
c:\ossend>hexo -v
(node:2720) [DEP0061] DeprecationWarning: fs.SyncWriteStream is deprecated.
hexo: 3.7.1
hexo-cli: 1.1.0
os: Windows_NT 10.0.10586 win32 ia32
http_parser: 2.8.0
node: 8.11.1
v8: 6.2.414.50
uv: 1.19.1
zlib: 1.2.11
ares: 1.10.1-DEV
modules: 57
nghttp2: 1.25.0
openssl: 1.0.2o
icu: 60.1
unicode: 10.0
cldr: 32.0
tz: 2017c

输入hexo init初始化该文件夹(有点漫长的等待。。。)
看到后面的Start blogging with Hexo!,说明安装成功
输入hexo s开启服务器,浏览器访问localhost:4000

5.Hexo与Github page关联

Hexo文件夹右键,点击Git Base Here这里”ossend”换成自己的用户名,邮箱换成自己的邮箱

1
2
$ git config --global user.name "ossend"
$ git config --global user.email "bearx@foxmail.com"

输入cd ~/.ssh检查是否有.ssh文件夹

1
2
$cd ~/.ssh
$ls

生成密钥对

1
2
3
4
5
6
$ ssh-keygen -t rsa -C “bearx@foxmail.com”
#默认三次回车
$ eval "$(ssh-agent -s)"
#添加密钥到ssh-agent
$ ssh-add ~/.ssh/id_rsa
#添加生成的SSH key到ssh-agent

登录Github,点击头像下的settings,添加ssh

新建一个new ssh key,将id_rsa.pub文件里的内容复制上去

输入ssh -T git@github.com测试添加ssh是否成功。如果看到Hi后面是你的用户名,就说明成功了

PS:假如ssh-key配置失败,那么只要以下步骤就能完全解决
首先,清除所有的key-pair

1
2
3
4
5
$ ssh-add -D
$ rm -r ~/.ssh
#删除github中的public-key
$ ssh-keygen -t rsa -C "xxx@xxx.com"
#重新生成ssh密钥对

接下来正常操作
在github上添加公钥public-key:
1、首先在你的终端运行 xclip -sel c ~/.ssh/id_rsa.pub将公钥内容复制到剪切板
2、在github上添加公钥时,直接复制即可

测试:
在终端 ssh -T git@github.com

6.配置Deployment,在其文件夹中,找到_config.yml文件,修改repo

1
2
3
4
deploy:
type: git
repository: git@github.com:ossend/ossend.github.io.git
branch: master

repo值是你在github项目里的ssh(右下角)

7.写一篇文章

1
$ hexo new post “文章名”

这时候在文件夹_posts目录下将会看到已经创建的文件
在生成文章部署到github之前,需要安装一个扩展:

1
$ npm install hexo-deployer-git --save

使用编辑器编好文章,那么就可以使用命令:hexo d -g,生成以及部署了
预览你的地址:http://用户名.github.io

PS:常见问题
如果发现更改后没有发生变化,记得hexo clean一下,然后再生成部署

1
2
3
hexo clean
hexo g
hexo d