本文旨在记录一下我在通过hexo搭建一个博客,并将其部署在github上面的过程,也供我自己在以后的使用过程中能够快速学习和参考.需要看更详细或者官方文档的可以点击Hexo官方文档进行查看.

安装前提

安装 Hexo 非常简单。需要预先安装:

准备条件做好了之后就可以开始安装Hexo了

安装Hexo

打开Git Bash 执行命令

1
$ npm install -g hexo-cli

创建博客

Hexo安装完成后,分别执行如下命令,Hexo会自动生成需要的文件夹

1
2
3
$ hexo init <folder>  ##<folder> 为你指定的文件地址
$ cd <folder>
$ npm install

例如:需要将博客搭建在本地的D:\my_hexo下,则分别执行命令:hexo init D:\my_hexo ,cd D:\my_hexo,npm install
执行完命令后如果没有问题我们就可以执行启动命令来查看我们的博客了.

本地预览

1
2
3
$ hexo server 			## 启动服务,默认端口4000
$ hexo server -p xxxx ## 自定义端口启动服务
$ hexo clean ## 清除缓存,在页面显示不正常的时候可以执行此命令

然后在浏览器输入http://127.0.0.1:4000/ 即可访问

创建Repository

  1. 登录github 点击右上角的”+”,Create a new repository

Create a new repository

  1. 复制刚刚新建的https连接:https://github.com/Admol/admol.github.io.git
  2. 打开你hexo目录下的_config.yml
  3. 设置deploy信息,如:
    1
    2
    3
    4
    deploy:
    type: git
    repository: https://github.com/Admol/admol.github.io.git
    branch: master

设置SSH key

  1. 检验是否已存在key
    分别执行命令

    1
    2
    cd ~
    cd .ssh

    再执行命令 ls 查看是有已有key文件,一般存在key的话都会显示id_rsa.pub 和 id_dsa.pub这两个文件,没有key什么都不会显示

  2. 添加一个 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成功.

  3. Github 设置 SSH key

    登录github,点击Settings,然后点击 SSH keys ,在这个页面你可以管理你所有的ssh keys
    然后点击Add SSH key
    用文本编辑器打开刚刚添加的key文件id_rsa.pub,复制里面的所有的内容
    回到github页面,将复制的内容粘贴到刚刚那个页面的key对应的文本框里面,title 可以随便填写

  4. 测试ssh key 是否添加成功
    在命令行输入:

    1
    $ ssh -T git@github.com

    会出现一段警告代码,输入yes回车,然后会要求你输入刚刚设置的密码,然后它会和你说:Hi,帅哥....约吗

到此SSH key就设置完毕了

部署到Github

打开命令窗口,回到你的hexo博客目录下,如别执行如下命令:

1
2
hexo generate
hexo deploy

等待命令执行完毕后,可以查看代码是否已提交到github上,然后在浏览器输入admol.github.io就可以访问了

新建页面

1
$ hexo new page 'pageName'

执行命令后可以在你本地的/source 目录下看见以为你新增页面名为名的文件夹

显示页面

打开文件后可以对index.md 进行编辑.然后打开/themes/jacman目录下的_config.yml文件(自己正在使用的主题),
添加刚刚新增的页面:

1
2
3
4
5
menu:
首页: /
统计: /archives
关于: /about
pageName: /pageName ##前面的pageName可以自定义,后面的pageName必须写刚刚新增的页面名称

新建文章

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
2
theme_color:
theme: '色值'

修改logo图片

打开主题下的 _config.yml 文件,修改:

1
2
3
4
imglogo:
enable: false ## 是否显示logo
src: img/logo.gif ## logo图片地址
favicon: img/qq.ico ## 页面左上角图标

Hexo 版本升级

1
$ npm update hexo -g

使用Hexo快速搭建一个博客,并部署到github的更多相关文章

  1. Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages

    之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...

  2. 使用Hexo搭建个人博客并部署到GitHub或码云上全过程

    一.前言 如上图所示:GitHub有Github Pages,而码云也有码云 Pages 1.Github Pages或Gitee Pages是什么呢? Github Pages或者Gitee Pag ...

  3. 2019基于Hexo快速搭建个人博客,打造一个炫酷博客(1)-奥怪的小栈

    本文转载于:奥怪的小栈 这篇文章告诉你如何在2019快速上手搭建一个像我一样的博客:基于HEXO+Github搭建.并完成SEO优化,打造一个炫酷博客. 本站基于HEXO+Github搭建.所以你需要 ...

  4. 使用 Github 和 Hexo 快速搭建个人博客

    导语 个人兴趣爱好特别广泛,喜欢捣鼓各种小东西自娱自乐.虽然都没能深入研究,但是自己的“孩子”还是很想拿出来遛遛得人一句夸奖的.所以刚学 Markdown 的时候很是有想过要搭个个人博客来玩玩,一来激 ...

  5. github+Hexo快速搭建个人博客

    注意 本文主要针对Windows平台和Hexo 3.x 准备工作 下载Git [下载地址] [Git官网](https://git-scm.com/download/) 下载Node.js [下载地址 ...

  6. Hexo快速搭建静态博客并实现远程VPS自动部署

    这篇文章将如何搭建hexo,以及如何通过git webhooks实现远程vps的自动部署 这篇文件适合的条件: 简单的用于个人博客.公司博客展示,hexo的定位是静态博客,要实现动态服务器的功能并不适 ...

  7. Hexo&Github-Pages搭建个人博客

    some基础知识 hexo hexo是一款基于Node.js的静态博客框架 github-pages说明 github有两种主页,一种是github-page(个人主页),一种是项目主页,本教程针对个 ...

  8. Hexo+Git一个小时快速搭建个人博客

    搭建本地环境:Hexo框架 Hexo为何物 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用Markdown解析文章,并瞬间利用靓丽的主题生成静态网页.其中,Markdown是一个用于将普通 ...

  9. 在GitLab pages上快速搭建Jekyll博客

    前一段时间将我的Jekyll静态博客从github pages镜像部署到了 zeit.co(现vercel)上了一份,最近偶然发现gitlab pages也不错,百度也会正常抓取,于是动手倒腾,将gi ...

随机推荐

  1. pycaffe做识别时通道转换问题

    转自---------------------  作者:Peanut_范  来源:CSDN  原文:https://blog.csdn.net/u013841196/article/details/7 ...

  2. java 查看运行时某个类文件所在jar的位置

    在一些大型项目中,项目所依赖的库可能比较到,有时候也会出现库冲突的情况,曾经遇到过一种情况:一个第三方云存储提供了一个sdk,这个sdk本身依赖httpclient相关的包,然而对方却把httpcli ...

  3. 高性能网络编程(1)—accept建立连接‍(待研究)

    阿里云博客上一篇感觉还不错的文章,待研究,原文链接如下: http://blog.aliyun.com/673?spm=5176.7114037.1996646101.3.oBgpZQ&pos ...

  4. [ Python ] 文件的读写操作

    1. 文件读写操作 读写文件是最常见的 IO 操作, Python 内置了读写文件的函数.在磁盘上读写文件的功能是由操作系统提供的,所以读写文件是请求操作系统打开一个文件对象(通常称为文件描述符),然 ...

  5. java之基本数据类型与引用数据类型

    基本数据类型 需要注意的是字符是基本数据类型,但是字符串不是基本数据类型. 引用数据类型 类.接口类型.数组类型.枚举类型.注解类型. (上面说的字符串String属于引用数据类型中“类”的范畴) 两 ...

  6. LeetCode解题报告—— Word Search & Subsets II & Decode Ways

    1. Word Search Given a 2D board and a word, find if the word exists in the grid. The word can be con ...

  7. JAVA 语言类的特性(成员、重载、构造方法、静态成员)

    一.类的私有成员和公有成员 1.私有成员 修饰符private    如果在类的声明前加上修饰符private,则无法从该类的外部访问到该类的内部成员,而只能被该类自身访问和修改,而不嗯那个被其他类, ...

  8. WordPress主循环(The Loop)函数have_posts(),the_post()详解

    WordPress中调用文章标题是the_title();调用文章内容时用到the_content();调用文章的作者时用到the_author();等等这些函数,都需要在主循环中使用,下面就介绍一下 ...

  9. Docker for Windows 里的Shared Drives 设置不生效

    原文地址:传送门 问题描述:Docker中的settings里的Shared Drives 选择对应盘符后,点击Apply后无法生效,没办法选择对应盘符进行分享. 解决办法:win+R ,键入gped ...

  10. 利用js生成读取页面数据并导出为excel

    //核心,js部分 */var navs = new Vue({ el: '#navs', data: { navs: [] }, ready: function () { this.$http.ge ...