旧公司离职了.一直很享受公司的专线,但是现在这个资源没有了,博客也关了好几天,想了想不能就这么把博客扔在硬盘里面,所以自己百度了下如何用github pages搭建hexo的博客,发现别人做得很不错的样子.自己也就花了点心思做了一下,当然,也是踩了好几个坑…
1.先在github上新建仓库
这里直接用我的用户名做为仓库的名称,这个无所谓的,因为后面我会用自己的域名来做一个CNAME的解析,所以这里叫什么都无所谓.
仓库建好后github的pages服务并没有开启,所以要点击settings,在打开的页面向下拉动,找到GitHub Pages的source下,有个下拉框.直接选择master branch,然后点击边上的 save按钮.
2.本机安装git
这个很简单,我就不在这里说了.但是这一步也得做…记在这里先…
3.配置git在本地的SSH KEY密钥
需要在本地与github上都进行配置
先在本地配置:
打开git bash 然后运行
1 | $ cd ~/.ssh |
检查本机的ssh密钥,新安装的肯定没有的
1 | $ ssh-keygen -t rsa -C "邮件地址@youremail.com" |
注意1: 此处的邮箱地址,你可以输入自己的邮箱地址;
注意2: 此处的「-C」的是大写的「C」
然后系统会要你输入密码:
密码一定要记得.以后提交的时候会用到的哦.
如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。
注意:输入密码的时候没有 * 字样的,你直接输入就可以了。
4.配置github的SSH KEY密钥
在本机设置 SSH Key 之后,需要添加到 GitHub上,以完成 SSH 链接的设置。
1、打开本地 id_rsa.pub 文件( 一般所在的地址是: C:\Documents and Settings\Administrator.ssh\id_rsa.pub)。此文件里面内容为刚才生成的密钥。如果看不到这个文件,你需要设置显示隐藏文件。准确的复制这个文件的内容,才能保证设置的成功。
2、登陆 GitHub 系统。点击右上角的个人头像边的小三角,在显示出来的列表框中选择 Settings
页面跳转后,在左侧列表中选择SSH and GPG keys页面打开后,title不用填,直接把复制的密钥内容复制到下面的key文本域中,点击add ssh key,密钥添加成功!
可以输入下面的命令,看看设置是否成功
1 | ssh -T git@GitHub.com |
如果最后一行显示如下:
1 | Are you sure you want to continue connecting (yes/no)? |
不要紧张,输入 yes 按回车 就好,然后会看到:
1 | You've successfully authenticated, but GitHub does not provide shell access. |
说明密钥设置已经成功了.
5.设置用户信息
现在你已经可以通过 SSH 链接到 GitHub 了,还有一些个人信息需要完善的。
Git 会根据用户的名字和邮箱来记录提交。GitHub 也是用这些信息来做权限的处理,输入下面的代码进行个人信息的设置,把名称和邮箱替换成你自己的,名字必须是你的真名,而不是GitHub的昵称。
1 | $ git config --global user.name "XXXX"//用户名 |
接下来开始安心搭建HEXO先吧…
6.搭建HEXO
我是个JAVA程序员,其实对前端也不怎么了解.但是HEXO,到现在为止,基本上也很熟练了.不过有些坑,还是要踩的,现在记在这里,
1.首先安装NPM
基本上一般说来.NPM安装后,各种命令各种错,这里推荐大家先按照下面的命令来一遍,来自博客大神楼教主的分享,下面的这些命令.照着来一遍就行,不重安NPM,不重安系统,就执行一遍就可以了:
1 | npm set registry https://registry.npm.taobao.org # 注册模块镜像 |
基本上这些命令运行完,再来支持npm的指令是不会出错的了…
2.搭建hexo
打开CMD,开始执行指令1
2
3
4安装hexo
$npm install hexo -g
更新到最新版
$npm update hexo -g
创建hexo目录,比如H:\hexo ,进入H:\hexo 目录,执行命令:
1 | npm install hexo-cli -g #安装hexo |
直接访问http://localhost:4000能打开就说明部署好了.
3.迁移博客
因为之前我自己其实是已经写过了博客.而且已经设置好了主题,所以我是不会重新开始弄的,我只是做博客迁移.直接将服务器上的博客相关文件下载下来.然后放在了h:/hexo里面,直接运行是可以运行的,但是这里,还是有坑:
1 | 服务器上是centos系统,本地是win7,想在本机运行,会有系统版本的冲突,这里我只能是把博客文件中的node_modules删掉.然后重新运行指令: |
7.提交博客至github
在根目录下_config.yml里面任意位置新增以下语句:
1 | deploy: |
里面的git@github.com:your_username/your_username.github.io.git这个地址具体是什么,请在自己新建的仓库中,点击clone or download,然后点击use ssh,下面的地址就是这个了.
要记住的时候,上面的配置,每一个冒号后一定要有一个空格,这是yml的配置格式,不空格,是不会生效的哦!
配置好以后运行如下命令:
1 | npm install hexo-deployer-git --save |
这里也有一个坑.那就是你打开的cmd命令窗口是提交不了的.因为你提交的时候SSH还需要输入密码的.所以hexo d请打开git bash然后cd到hexo的根目录后再运行,提交的过程中,会弹出来一个密码框,需要你输入SSH KEY的密码,输入正确才会提交成功
现在访问your_username.github.io,一般是能看到了的,第一次部署github pages可能要过十分钟才能访问,请耐心等待.
8.设置自定义域名
博客搭建好了.但是域名还是不是自己的.这里需要在H:\hexo\public文件夹下新建一个文件CNAME,注意,没有后缀名,打开后输入你想自定义的域名,比如我现在的域名就是blog.coder666.cn,然后在hexo根目录中执行hexo d将CNAME文件名提交,然后在自己购买的域名的网站上做解析:
例如我的域名,将记录值设置为blog,记录类型选择为CNAME,线路为默认,记录值为xieyushi.github.io(这个域名就是配置前能直接访问到的域名地址)然后保存.过个几分钟一般就可以正常访问了.
至此,hexo博客搭建至github pages就完成了,如果有些地方写的不对的,欢迎有人提出,谢谢.