史上最详细“截图”搭建Hexo博客并部署到Github
http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html
大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hexo博客并部署到Github,走了不少弯路。现在终于搭建出来了,为了帮助大家,我决定写一篇“史上最详细“截图”搭建Hexo博客并部署到Github”。

工具/原料
- Windows(Mac也是差不多,可参照)
- Git
- Node.js
安装Hexo
- 1
利用 npm 命令即可安装。在任意位置点击鼠标右键,选择Git Base。

- 2
输入命令:
npm install -g hexo
注意:-g是指全局安装hexo。
END
创建Hexo文件夹
安装完成后,在你喜爱的文件夹下(如C:\Hexo),执行以下指令(在C:\Hexo内点击鼠标右键,选择Git Bash),Hexo 即会自动在目标文件夹建立网站所需要的所有文件。
hexo init
END
安装依赖包
npm install
END
本地查看
现在我们已经搭建起本地的hexo博客了,执行以下命令(在C:\Hexo),然后到浏览器输入localhost:4000看看。
hexo generate
hexo server
END
注册Github账号
这里不演示了。
END
创建Repository
创建的时候注意Repository的名字。比如我的Github账号是angelen10,那么我应该创建的Repository的名字是:angelen10.github.io。
END
修改配置文件
- 1
到你刚刚创建的Repository下,找到以下内容:

- 2
先点击HTTPS,然后复制里面的地址。然后编辑_config.yml文件(在C:\Hexo下)。

- 3
修改文件里面的deploy。其中的repository就改成你刚刚复制的地址。保存这个文件。
END
设置SSH keys
- 1
在Git Bash输入以下指令(任意位置点击鼠标右键),检查是否已经存在了SSH keys。
ls -al ~/.ssh
- 2
如果不存在就没有关系,如果存在的话,直接删除.ssh文件夹里面所有文件:

- 3
输入以下指令(邮箱就是你注册Github时候的邮箱)后,回车:
ssh-keygen -t rsa -C "angelen10@163.com"

- 4
然后它会提示要你输入passphrase(如上图,我没有输入直接回车,如果你输入的话,要记得,到时候会用到)。之后,如果出现类似下图:

- 5
然后键入以下指令:
ssh-agent -s

- 6
继续输入指令:
ssh-add ~/.ssh/id_rsa
- 7
输入之后,在我这里是出错了,不知道你的有没有出错。

- 8
如果你的也是这样子出错了的话,就输入以下指令:
eval `ssh-agent -s`
ssh-add

- 9
到了这一步,就可以添加SSH key到你的Github账户了。键入以下指令,拷贝Key(先拷贝了,等一下可以直接粘贴):
clip < ~/.ssh/id_rsa.pub
- 10
然后到Github里面,点击右上角的设置图标:

- 11
在Settings sidebar那里,点击SSH keys:

- 12
点击Add SSH key:

- 13
输入Title,作为这个key的描述吧(你可以输入Personal MacBook Air,瞬间高大上)

- 14
然后这个Key就是刚刚拷贝的,你直接粘贴就好(也可以文本打开以下文件):

- 15
点击Add Key:

- 16
输入你的Github密码即可完成SSH Key的添加。嗯,最后还是测试一下吧,键入以下命令:
ssh -T git@github.com

- 17
你可能会看到有警告,没事,输入“yes”就好。
END
完成部署
- 1
最后一步,快要成功了,键入指令:
hexo generate
hexo deploy
- 2
OK,我们的博客就已经完全搭建起来了,在浏览器输入(当然,是你的用户名):
http://angelen10.github.io/

- 3
注意:每次修改本地文件后,需要键入hexo generate才能保存。每次使用命令时,都要在C:\Hexo目录下。每次想要上传文件到Github时,就应该先键入hexo generate保存之后,再键入hexo deploy。大概成功之后是酱紫的:

- 4
对了,记住上图的Username是你的Github账号名称,而不是邮箱;Password就是你的Github的密码。
END
Tips
hexo现在支持更加简单的命令格式了,比如:
hexo g == hexo generate
hexo d == hexo deploy
hexo s == hexo server
hexo n == hexo new
END
注意事项
- 这篇和官方的说法有一点不一样,不过这是成功之谈。
史上最详细“截图”搭建Hexo博客并部署到Github的更多相关文章
- 史上最详细“截图”搭建Hexo博客——For Windows
http://angelen.me/2015/01/23/2015-01-23-%E5%8F%B2%E4%B8%8A%E6%9C%80%E8%AF%A6%E7%BB%86%E2%80%9C%E6%88 ...
- Termux搭建hexo博客并部署到GitHub
Termux搭建hexo博客并部署到GitHub 安装 termux-change-repo apt update apt install git && nodejs &&am ...
- 搭建hexo博客并部署到github上
hexo是由Node.js驱动的一款快速.简单且功能强大的博客框架,支持多线程,数百篇文章只需几秒即可生成.支持markdown编写文章,可以方便的生成静态网页托管在github上. 感觉不错. 前端 ...
- 搭建Hexo博客并部署到Github
参考: http://www.jianshu.com/p/a67792d93682 http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d. ...
- Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...
- 使用Hexo搭建个人博客并部署到GitHub或码云上全过程
一.前言 如上图所示:GitHub有Github Pages,而码云也有码云 Pages 1.Github Pages或Gitee Pages是什么呢? Github Pages或者Gitee Pag ...
- 使用Hexo快速搭建一个博客,并部署到github
本文旨在记录一下我在通过hexo搭建一个博客,并将其部署在github上面的过程,也供我自己在以后的使用过程中能够快速学习和参考.需要看更详细或者官方文档的可以点击Hexo官方文档进行查看. 安装前提 ...
- Hexo瞎折腾系列(6) - 将博客同时部署到Github和Coding
前言 由于本人只是将Hexo博客同时部署到 Github 和 Coding.net ,所以这里只介绍怎么同时部署到这两个网站的pages. 之所以选择这两个网站,是因为国外用户可以访问 Github, ...
- 在vps上搭建hexo博客
最近更换了服务器,需要把自己的Hexo Next重新部署到新服务器上,本文记录一下在vps上搭建hexo博客的过程. 在vps上搭建hexo博客需要下面这些工具: Nginx: 用于博客展示 SSH: ...
随机推荐
- 实时数据显示--SignalR实例演示
近段时间,有实现一个看板的功能,就是用户更新信息时,即是对数据库的数据进行插入,更新,或是删除时,在墙上的屏幕的数据不需要人为去刷新,用户就能看到更新后的数据. 实现此功能,Insus.NET使用Si ...
- C#基础-replace()过滤非法字符
string FilterfileName(string strName) { string result=string.Empty ; if (string.IsNullOrWhiteSpace(s ...
- 再谈ABC
最近一直在看蒋老师那13篇<我的WCF之旅>,终于看完了,看得很慢,记得最初出来工作的时候那时的技术总监建议我去看的,可几个月前我才开始看,看了几个月才把13篇看完.第一篇WCF的博文是我 ...
- WinForm小白的WPF初试一:从PropertyGrid控件,输出内容到Word(上)
学WinForm也就半年,然后转到WPF,还在熟悉中.最近拿到一个任务:从PropertyGrid控件,输出内容到Word.难点有: 一.PropertyGrid控件是WinForm控件,在WPF中并 ...
- OC基础数据类型-NSData-NSMutableData-NSString
NSData和NSMutableData存储的是二进制数据,在文件操作,网络,以及核心图形图像中使用较广泛.NSData创建后不可以再修改,NSMutableData可以再次修改. 1.NSStrin ...
- Android使用SQLite数据库(3)
插入新数据到SQLite数据库,首先定义一个ContentValues变量,然后使用put方法: public void put (String key, String value) 其中key是字段 ...
- mysql int(3)与int(11)的区别
总结,int(M) zerofill,加上zerofill后M才表现出有点点效果,比如 int(3) zerofill,你插入到数据库里的是10,则实际插入为010,也就是在前面补充加了一个0.如果i ...
- python统计列表内元素个数
代码如下: list01 = ['a','b','c','a','c'] set01 = set(list01) print(set01) dict01 = {} for item in set01: ...
- java注释规范
前言: 现在java的出产地sun公司并没有定义一个java注释规范,注释规范目前是每个公司自己有自己的一套规范,主要是为了团队之间的协作. 1.基本规则 1.注释应该使代码更加清 ...
- wso2esb简介
WSO2 ESB是一个轻量级的易于使用的企业服务资源总线,基于Apache Software License v2.0. WSO2 ESB 允许系统管理员和SOA架构师轻松的配置消息路由, 虚拟化, ...