搭建这个个人博客其实在挺早的时候就有这个想法,由于一些原因一直在那里搁浅。最近刚好也有这个时间所以就来搭建一下。在网上百度了很多,发现总是有一些不够完善的,导致查了很多资料,所以写这篇文章来记录一下,防止忘记,仅供参考。
总的来说可以分为以下几个步骤:
1、搭建环境
2、在GitHub上创建GitHub pages项目
3、Hexo 创建个人博客
4、将自己的域名关联到GitHub pages上
5、在博客写文章
搭建环境
安装Node.js
在Windows环境下安装Node.js,只需要去 Node官网 下载对应系统安装包,只需一直按下一步就可以。如下图:
安装Git
去Git官网下载自己系统对应的版本安装包。如下图:
安装完成之后。可以通过命令行输入 git version
命令,查看是否安装成功,如下图
安装完成之后,鼠标右键点击会出现 Git HUI Here
, Git Bash Here
两个按钮,
前面一个是图形界面的Git操作,后面一个是命令行,我们选择 Git Bash Here
按钮。
在GitHub上创建GitHub pages项目
注册GitHub账号
如果已经有了自己的GtiHub账号,只需要登录就行,没有的话就去官网注册
创建项目代码库
a)注册完成之后,创建一个自己的GitHub Pages项目,点击右上角头像左边的 +
按钮,展开后点击 New repository
按钮
b)新建项目如下图:
上图中 Repository name
输入框中 userName.github.io
中的 userName
改成你自己的用户名。
Description
输入项目的描述
最后点击 Create repository
按钮,创建项目库
项目创建完成之后,配置属性
a)点击 Settings
按钮,如下图所示:
b)进入 Settings
后,拉到最下面,点击 Choose a theme
按钮,进去后选择一个主题。选择完主题之后,会给你生成一个访问路径,一般会是 https://userName.github.io/
。如下图所示:
配置SSH密钥
配置Github的SSH密钥可以让本地git项目与远程的github建立联系,让我们在本地写了代码之后直接通过git操作就可以实现本地代码库与Github代码库同步。操作如下:
a)查看是否存在SSH密钥(keys)
打开 Git Bash Here
,并运行如下命令:
$ cd ~/.ssh
检查你本机用户目录下是否存在**.ssh**目录
如果,不存在此目录,则进行第二步操作,否则可以略过第二步,直接进入第三步操作。
b)创建新的ssh秘钥(keys)
$ ssh-keygen -t rsa -C "your_email@example.com"
#这将按照你提供的邮箱地址,创建一对密钥
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
直接回车,则将密钥按默认文件进行存储。此时也可以输入特定的文件名,比如 /c/Users/you/.ssh/github_rsa
,当然一般情况下我们也不会做修改
接着,根据提示,你需要输入密码和确认密码(说到这里,如果你很放心,其实可以不用密码,就是到输密码的地方,都直接回车,所以每次push就只管回车就行了。所谓的最安全的密码,就是没有密码 – – 哈哈)。相关提示如下:
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
输入完成之后,屏幕会显示如下信息:
Your identification has been saved in /c/Users/you/.ssh/id_rsa.
Your public key has been saved in /c/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
c)在GitHub账户中添加你的公钥
运行如下命令,将公钥的内容复制到系统粘贴板(clipboard)中。
clip < ~/.ssh/id_rsa.pub
或者你习惯使用ctrl+c与ctrl+v的话,那么你可以使用gedit命令
gedit ~/.ssh/id_rsa.pub
接着登录自己的GitHub账号,进入Settings页面。如下图所示
在Title中随便输
在Key中输入你刚才已经复制到系统粘贴板中的内容
d)测试
输入如下命令:
$ 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
即可。
显示的如果是如下内容,则表示成功,
Hi Ink-zuji! You've successfully authenticated, but GitHub does not provide shell access.
e)设置用户信息
现在你已经可以通过SSH链接到GitHub了,还有一些个人信息需要完善的。
Git会根据用户的名字和邮箱来记录提交。GitHub也是用这些信息来做权限的处理,输入下面的代码进行个人信息的设置,把名称和邮箱替换成你自己的,名字根据自己的喜好自己取,而不一定是GitHub的昵称。
$ git config --global user.name "ryanlijianchang"//用户名
$ git config --global user.email "liji.anchang@163.com"//填写自己的邮箱
到这里 SSH Key 就配置成功了,本机可以连接到Github上了。
Hexo 创建个人博客
Hexo 安装
点击 Git Bash Here
,进入命令模式,输入如下命令
$ npm install hexo-cli -g
安装成功之后,如下图所示:
Hexo初始化配置
安装完成后,根据自己喜好建立目录(如F:\Blog\Hexo),直接进入F:\Blog\Hexo文件夹下右键鼠标,点击Git Bash Here,进入Git命令框,执行以下操作。
$ hexo init
安装 Hexo 完成后,Hexo 将会在指定文件夹中新建所需要的文件
本地查看效果
执行下面语句,查看效果
$ hexo generate
#可以简写成 hexo g
$ hexo server
#可以简写成 hexo s
登录localhost:4000
,即可看到本地效果如下:
如果localhost:4000
没有查看到如上结果,那么有可能是端口被占用了,可以执行如下命令:
$ hexo s -p 5000
#将端口改成 5000,登录 localhost:5000,即可查看效果
美化博客(可选)
a)进入Hexo的官网主题专栏,选择我们自己喜欢的主题
b)克隆主题
再打开Hexo文件夹下的themes目录(F:\Blog\hexo\themes),右键 Git Bash Here
,在命令行输入:
git clone https://github.com/luuman/hexo-theme-spfk(此处地址替换成你需要使用的主题的地址)
下载下来之后需要删除**.git**文件,防止影响别人的项目
c)修改Hexo配置文件
下载完成后,打开Hexo文件夹下的配置文件_config.yml
修改参数为:theme: hexo-theme-spfk
将博客部署到GitHub Pages上
a)进入自己在GitHub中创建的工程,如下图所示:
上面的路径如果不是**git@…**开头的,可以点击 Use SSH
按钮
b)配置创建的Hexo文件夹下的_congfig.yml
参数
打开_congfig.yml
,拉到最下面,配置如下图所示
c)将Hexo部署到GitHub
$ npm install hexo-deployer-git --save
# 安装 hexo 部署到 git page 的 deployer ,只需执行一次就行
$ hexo clean
# 清除 hexo g 生成的 public 文件夹,防止有缓存
$ hexo g
# 生成 public 文件夹
$ hexo d
# 先生成 .deploy_git 文件夹,再将文件部署到GitHub上
部署成功之后,可以使用 https://userName.github.io
访问查看
将自己的域名关联到GitHub pages上
购买域名
在阿里云万网上 购买一个域名,个人买的是.top域名,第一年只要4元。
配置CNAME文件
在 \hexo\source 文件夹下创建文件 CNAME (新建记事本文件命名CNAME,然后打开),
内容为你的域名,例如我都域名是: [ink-zuji.top]{https://ink-zuji.top}
在Hexo文件夹提交
$ hexo clean
$ hexo g -d
解析域名
进入阿里云控制台域名服务页面,点击解析,如下图所示:
配置解析参数
配置两条解析数据,如下图所示:
上图中填写的记录值需要改成自己的GitHub域名与IP
获取IP方式如下所示
这样就可以使用自己的域名访问了,例如我自己的是 ink-zuji.top
在博客写文章
用hexo发表新文章
$ hexo n "文章标题"
其中 我的家 为文章标题,执行命令 hexo n "HelloWorld"
后,会在项目 \Hexo\source_posts 中生成 HelloWorld.md文件,用编辑器打开编写即可。
当然,也可以直接在\Hexo\source_posts中新建一个md文件,我就是这么做的。
写完后,推送到服务器上,执行以下命令即可在我们的站点看到新的文章。
用Markdown写文章
在 \Hexo\source_posts 文件夹下存放着我们的文章,它们的格式都是以.md格式结尾的,没错,Hexo也是支持Markdown语法的,所以当我们需要写具有格式化的文章时,我们可以使用支持Markdown语法的编辑器进行文章编译,然后保存文件到 \Hexo\source_posts 文件夹下即可。
参考资料
2、GIT 常用命令
3、Hexo 文档