一、注册GitHub账号(已经有GitHub账号的请忽略这一步)
先在Github注册一个账号:https://github.com/
新建项目,项目必须要遵守格式:账户名.github.io,不然接下来会有很多麻烦。并且需要勾选Initialize this repository with a README
在建好的项目右侧有个settings按钮,点击它,向下拉到GitHub Pages,你会看到那边有个网址,访问它,你将会发现该项目已经被部署到网络上,能够通过外网来访问它。
二、环境搭建
下载Node.js安装文件
现在电脑基本都是64位的,我就放64位的下载地址:https://nodejs.org/dist/v8.9.4/node-v8.9.4-x64.msi
或者自行到官网下载最新版本: https://nodejs.org
安装Git:
完成之后到桌面空白处单击鼠标右键,选择Git Bash Here进入bash窗口输入命令 node -v 和 npm -v 验证安装是否成功,成功界面如下
三、Hexo安装
Hexo简介
Hexo是什么呢?也许引用Hexo官方文档里面的说明是再好不过了:
1 | Hexo is a fast, simple and powerful blog framework. You write posts in Markdown (or other languages) and Hexo generates static files with a beautiful theme in seconds. |
1 | Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。 |
安装Git
下载地址:https://git-scm.com/download,按照默认傻瓜式安装就好了
补充一句,如果你已经安装了Git,你可以通过Git本身获得最新的开发版本:
1 | $ git clone https://github.com/git/git |
完成之后到桌面空白处单击鼠标右键,如果有出现Git Bash Here选项则证明已经安装成功
下载Hexo
在桌面空白处单击鼠标右键,选择Git Bash Here进入bash窗口,在自己认为合适的地方创个文件夹,我是在D盘建了一个blog文件夹。然后通过命令行进入到该文件夹里面
再输入命令 npm install -g hexo 下载Hexo
1 | $ npm install -g hexo |
等待完成之后,输入命令 hexo -v 验证安装是否成功
初始化
输入hexo init,初始化该文件夹
输入npm install,安装所需要的组件
输入hexo g,首次体验Hexo
输入hexo s,开启服务器,访问该网址,正式体验Hexo
问题:假如页面一直无法跳转,那么可能4000端口被占用了。此时我们ctrl+c停止服务器,接着输入hexo server -p 端口号来改变端口号
那么出现如下图就成功了
四、将Hexo与Github page联系起来
安装插件
打开git bash,进入hexo根文件夹,输入npm install hexo-deployer-git --save 命令安装插件
配置SSH
设置全局配置user.name 和user.email(如果是第一次的话)
1 | git config –-global user.name “shuaibi” //(“”的账号是刚才Github里面自己注册的账号) |
输入cd ~/.ssh,检查是否有.ssh的文件夹
输入ssh-keygen -t rsa -C "ojbk.gmail.com"(""中间写你直接设置的邮箱),连续三个回车,生成密钥,最后得到了两个文件:id_rsa和id_rsa.pub(默认存储路径是:C:\Users\Administrator.ssh)。
输入eval "$(ssh-agent -s)",添加密钥到ssh-agent
再输入ssh-add ~/.ssh/id_rsa,添加生成的SSH key到ssh-agent
登录Github,点击头像下的settings,添加ssh
新建一个new ssh key,将id_rsa.pub文件里的内容复制上去
回到git bash 输入ssh -T git@github.com,测试添加ssh是否成功。如果看到Hi后面是你的用户名,就说明成功了
问题: 假如ssh-key配置失败,那么只要以下步骤就能完全解决
首先,清除所有的key-pair
ssh-add -D
rm -r ~/.ssh
删除你在github中的public-key
重新生成ssh密钥对
ssh-keygen -t rsa -C “xxx@xxx.com“
接下来正常操作
在github上添加公钥public-key:
1、首先在你的终端运行 xclip -sel c ~/.ssh/id_rsa.pub将公钥内容复制到剪切板
2、在github上添加公钥时,直接复制即可
3、保存
测试:
在终端 ssh -T git@github.com
配置
配置Deployment,在根文件夹中,找到_config.yml文件,修改repo值(在末尾)
1 | deploy: |
repo值是你在github项目里的ssh(右下角)
部署
用git bash部署hexo到github
hexo server 或者 hexo s
hexo generate 或者 hexo g
hexo deploy 或者 hexo d
看到这样的进程,代表成功部署hexo到github
等待10分钟左右,打开用户名.github.io,会出现如下界面(代表成功搭建博客):
五、绑定自己域名
申请域名
自己去阿里云或者腾讯云等网站购买域名
解析域名
添加如下的解析
得到域名之后,到控制台进行解析
控制台->域名->域名列表->解析
在腾讯云控制台,设置主机记录www,记录类型为A,记录值是IP185.199.111.153。其中185.199.111.153是Github Pages服务器指定的IP地址,访问该IP地址即表示访问Github Pages。
在阿里云控制台,设置主机记录@,记录类型为CNAME,记录值是robotno42.github.io。表示将http://messilessblog.com这个主域名映射robotno42.github.io
如何知道知道的 Github Pages IP
在命令提示符中输入ping -4 robotno42.github.io
配置
- 在
博客的source文件夹下建立一个CNAME的文件 - 内容写入你的域名信息,比如我这里是
messilessblog.com
打开博客下的_config.yml文件
1 | # URL |
将url后面改成自己的域名地址,注意!不这样做每次提交github那边都要重新设置自定义域名
Github 设置
进入博客->点击Setting,找到 Custom domain 添加域名后保存即可