准备工作
- 下载安装Node.js:Node.js官网,一路next就可以了。
安装好以后打开Cmd,输入node -v以及npm -v
能正确显示版本号即为安装成功。
国外的源速度实在太慢,所以我们切换全局配置到淘宝源:npm config set registry https://registry.npm.taobao.org - 安装Git:Git官网
安装成功的象征就是在电脑上任何位置鼠标右键能够出现如下两个选择: - 注册Github,然后创建新项目,项目名称必须是
用户名.github.io这种格式。
这边创建好就可以先放着了,待会才会用到它。
安装HEXO
在自己认为合适的地方创建一个文件夹,至于名字嘛,自己喜欢就行(如E:\bolg)。进入刚刚创建的文件夹,右键鼠标,选择git bash,输入:npm install hexo-cli -g
接下来的所有命令都是在刚刚我们创建的文件夹内使用(比如我的E:\bolg)。
安装完成后可以输入 hexo -v 来检查是否安装成功。
接着输入hexo init ,初始化该文件夹,看到后面的“Start blogging with Hexo!”的话表示初始化完成,那我们的工作已经成功了一大半啦!
最后安装输入npm install ,安装所需的组件。
接下来就是激动人心的时刻啦!
输入:hexo g(hexo generate的简写)生成。
再输入hexo s (hexo server的简写)。
假如页面一直无法跳转,那么可能端口被占用了。此时我们ctrl+c停止服务器,接着输入
hexo server -p 端口号来改变端口号
打开后差不多是下图的样子就说明安装成功了:
将Hexo关联到Github Page
设置github的user name和email
在我们创建的blog文件夹右键,选择git bash,输入(名字和邮箱为刚刚注册GitHub时用的):1
2git config --global user.name "your name"
git config --global user.email "your email"生成ssh密钥
输入cd ~/.ssh
再输入ls,列出该文件夹下面的内容,
该图说明文件夹存在,而且下面已经有好几个文件了,如果该文件夹不存在,那么直接进行下一步。
再输入ssh-keygen -t rsa -C "your email"
连续三个回车,生成密钥,最后得到了两个文件:id_rsa和id_rsa.pub(默认存储路径是:C:\Users\当前用户名\.ssh)。
找到上述的文件夹,打开id_rsa.pub文件,复制里面的内容到github->settings->SSH and GPG key->new ssh key
具体如下图:
测试ssh设置是否成功:ssh -T git@github.com
第一次连接或测试的话需要输入个yes,然后最下面显示Hi 你的用户名!的话就代表成功了。
假如ssh-key配置失败,只要按以下步骤就可以解决:首先,清除所有的key-pair
ssh-add -Drm -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
2
3
4deploy:
type: git
repo: git@github.com:你的GitHub用户名/你的GitHub用户名.github.io.git
branch: master
最后,安装部署到github插件依赖:npm install –save hexo-deployer-git
- 将本地Hexo部署到GitHub
1
2hexo clean
hexo g -d
等待3-5分钟的样子,打开你的github.io页面看一下吧!
绑定域名
首先是注册域名,这个感觉没啥好说的,反正万网,或者腾讯云等都可以。
然后进入域名的管理界面,找到解析,添加cname记录就可以了,记录值直接填自己账号.github.io.地址就行。
注意:
做完这一切以后一定要在blog的source文件夹下新建一个CANME(必须大写) 文件,里面加上你刚刚购买的域名,否者你每次deploy了以后都得去GitHub上设置绑定域名。
解析时长大概需要10分钟,之后输入
1 | hexo g -d |
再打开自己的域名,看看是否能打开吧!
