使用Hexo快速搭建一个博客,并部署到github
本文旨在记录一下我在通过hexo搭建一个博客,并将其部署在github上面的过程,也供我自己在以后的使用过程中能够快速学习和参考.需要看更详细或者官方文档的可以点击Hexo官方文档进行查看.
安装前提
安装 Hexo 非常简单。需要预先安装:
准备条件做好了之后就可以开始安装Hexo了
安装Hexo
打开Git Bash 执行命令
1 |
$ npm install -g hexo-cli |
创建博客
Hexo安装完成后,分别执行如下命令,Hexo会自动生成需要的文件夹
1 |
$ hexo init <folder> ##<folder> 为你指定的文件地址 |
例如:需要将博客搭建在本地的D:\my_hexo下,则分别执行命令:hexo init D:\my_hexo ,cd D:\my_hexo,npm install
执行完命令后如果没有问题我们就可以执行启动命令来查看我们的博客了.
本地预览
1 |
$ hexo server ## 启动服务,默认端口4000 |
然后在浏览器输入http://127.0.0.1:4000/ 即可访问
创建Repository
- 登录github 点击右上角的”+”,Create a new repository
Create a new repository
- 复制刚刚新建的https连接:
https://github.com/Admol/admol.github.io.git - 打开你hexo目录下的
_config.yml - 设置deploy信息,如:
1
2
3
4deploy:
type: git
repository: https://github.com/Admol/admol.github.io.git
branch: master
设置SSH key
检验是否已存在key
分别执行命令1
2cd ~
cd .ssh再执行命令
ls查看是有已有key文件,一般存在key的话都会显示id_rsa.pub和id_dsa.pub这两个文件,没有key什么都不会显示添加一个 SSH key
执行命令(已有key的可以跳过步骤2):
1
2
3$ ssh-keygen -t rsa -C "your_email@mail.com" ## t 指定密钥类型,默认是 rsa ,可以省略。 -C 设置注释文字,比如邮箱或其他。
然后会提示你
Enter Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter,这里是输入一个文件名用来保存ssh key,也可以什么都不输,会使用默认的id_rsa.pub和id_dsa.pub回车之后,需要输入两次密码(该密码是你push文件的时候要输入的密码,而不是github的密码)
输入密码之后,看见如下显示信息,添加SSH key成功.
Github 设置 SSH key
登录github,点击
Settings,然后点击SSH keys,在这个页面你可以管理你所有的ssh keys
然后点击Add SSH key
用文本编辑器打开刚刚添加的key文件id_rsa.pub,复制里面的所有的内容
回到github页面,将复制的内容粘贴到刚刚那个页面的key对应的文本框里面,title 可以随便填写测试ssh key 是否添加成功
在命令行输入:1
$ ssh -T git@github.com
会出现一段警告代码,输入yes回车,然后会要求你输入刚刚设置的密码,然后它会和你说:
Hi,帅哥....约吗
到此SSH key就设置完毕了
部署到Github
打开命令窗口,回到你的hexo博客目录下,如别执行如下命令:
1 |
hexo generate |
等待命令执行完毕后,可以查看代码是否已提交到github上,然后在浏览器输入admol.github.io就可以访问了
新建页面
1 |
$ hexo new page 'pageName' |
执行命令后可以在你本地的/source 目录下看见以为你新增页面名为名的文件夹
显示页面
打开文件后可以对index.md 进行编辑.然后打开/themes/jacman目录下的_config.yml文件(自己正在使用的主题),
添加刚刚新增的页面:
1 |
menu: |
新建文章
1 |
$ hexo new [layout] 'name' |
[layout] 为可选,不写默认为post. /source 目录下的文件夹名称即为 layout 名
安装主题
1 |
$ git clone https://github.com/JamesPan/hexo-theme-icarus.git themes/icarus |
更换主题
首先下载主题,然后打开根目录下的 _cinfig.yml ,修改 theme: 要更换的主题名
修改主题颜色
打开 /themes/jacman目录下的_config.yml文件,修改:
1 |
theme_color: |
修改logo图片
打开主题下的 _config.yml 文件,修改:
1 |
imglogo: |
Hexo 版本升级
1 |
$ npm update hexo -g |
使用Hexo快速搭建一个博客,并部署到github的更多相关文章
- 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 ...
- 2019基于Hexo快速搭建个人博客,打造一个炫酷博客(1)-奥怪的小栈
本文转载于:奥怪的小栈 这篇文章告诉你如何在2019快速上手搭建一个像我一样的博客:基于HEXO+Github搭建.并完成SEO优化,打造一个炫酷博客. 本站基于HEXO+Github搭建.所以你需要 ...
- 使用 Github 和 Hexo 快速搭建个人博客
导语 个人兴趣爱好特别广泛,喜欢捣鼓各种小东西自娱自乐.虽然都没能深入研究,但是自己的“孩子”还是很想拿出来遛遛得人一句夸奖的.所以刚学 Markdown 的时候很是有想过要搭个个人博客来玩玩,一来激 ...
- github+Hexo快速搭建个人博客
注意 本文主要针对Windows平台和Hexo 3.x 准备工作 下载Git [下载地址] [Git官网](https://git-scm.com/download/) 下载Node.js [下载地址 ...
- Hexo快速搭建静态博客并实现远程VPS自动部署
这篇文章将如何搭建hexo,以及如何通过git webhooks实现远程vps的自动部署 这篇文件适合的条件: 简单的用于个人博客.公司博客展示,hexo的定位是静态博客,要实现动态服务器的功能并不适 ...
- Hexo&Github-Pages搭建个人博客
some基础知识 hexo hexo是一款基于Node.js的静态博客框架 github-pages说明 github有两种主页,一种是github-page(个人主页),一种是项目主页,本教程针对个 ...
- Hexo+Git一个小时快速搭建个人博客
搭建本地环境:Hexo框架 Hexo为何物 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用Markdown解析文章,并瞬间利用靓丽的主题生成静态网页.其中,Markdown是一个用于将普通 ...
- 在GitLab pages上快速搭建Jekyll博客
前一段时间将我的Jekyll静态博客从github pages镜像部署到了 zeit.co(现vercel)上了一份,最近偶然发现gitlab pages也不错,百度也会正常抓取,于是动手倒腾,将gi ...
随机推荐
- django wsgi nginx 配置
""" WSGI config for HelloWorld project. It exposes the WSGI callable as a module-leve ...
- Leetcode 之Length of Last Word(38)
做法很巧妙.分成左右两个对应的部分,遇到左半部分则入栈,遇到右半部分则判断对应的左半部分是否在栈顶.注意最后要判断堆栈是否为空. bool isValid(const string& s) { ...
- (翻译)Xamarin.Essentials 最新预览版的更多跨平台 API
原文地址:https://blog.xamarin.com/cross-platform-apis-xamarin-essentials-latest-preview/ 在 Microsoft Bui ...
- CentOS为中文显示
[sudo yum groupinstall chinese-support]命令即可安装
- 创建 OpenStack云主机 (十五)
创建过程 创建虚拟网络 创建m1.nano规格的主机(相等于定义虚拟机的硬件配置) 生成一个密钥对(openstack的原理是不使用密码连接,而是使用密钥对进行连接) 增加安全组规则(用iptable ...
- undefined symbol: _ZNSt8ios_base4InitD1
undefined symbol: _ZNSt8ios_base4InitD1 用gcc编译C++动态库导致,用g++编译就好了
- qTip2 Events详细说明
绑定事件: 这个API触发一些特殊的事件(以下详细信息),允许你给qTip分配多个时间监听,和为某一事件做出响应,例如: 我们绑定一个事件句柄,它将侦听qTip的移动的事件,和更新DIV元素里面显示的 ...
- 在ns2.35中添加myevalvid框架
在用ns2进行网络视频通信仿真的时候,先要为我们自己的ns2添加evalvid或者myevalvid框架.其中myevalvid框架是由柯志亨老师整合evalvid和ns2之后得出的新框架,笔者建议大 ...
- Codeforces 1099 D. Sum in the tree-构造最小点权和有根树 贪心+DFS(Codeforces Round #530 (Div. 2))
D. Sum in the tree time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- Codeforces Round #433 (Div. 2, based on Olympiad of Metropolises) D. Jury Meeting(双指针模拟)
D. Jury Meeting time limit per test 1 second memory limit per test 512 megabytes input standard inpu ...