先看效果:ious.ml

记录使用hexo搭建个人博客的过程

至于在博客里记录什么内容,现在还没想好。已经熟悉了博客园,不想换。

1.概念

Github Pages

Github Pages可以被认为是用户编写的、托管在github上的静态网页。
GitHub是一个“社会编码”网站。它允许您上传代码存储库以存储在 Git 版本控制系统中。然后,您可以在代码项目上进行协作,默认情况下系统是开源的。

hexo

快速、简洁且高效的博客框架,四个特点:超快速度,支持 Markdown,一键部署,丰富的插件。

NexT

«NexT» 是一款风格优雅的高质量 Hexo主题,自点点滴滴中用爱雕琢而成。

参考

2.准备

必要软件

  • 安装Git Bash:https://www.git-scm.com/downloads
  • 安装nodejs:https://nodejs.org/en/

安装hexo和Next

先创建一个文件夹:bolg(用来存放所有博客的的东西)

cd D:\CODE\bolg #D:\CODE\bolg是我的文件夹
npm install -g hexo-cli #安装hexo脚手架
hexo init   #hexo初始化命令
npm install  #
git clone https://github.com/theme-next/hexo-theme-next themes/next #安装Next主题

新建项目

在github上新建一个名叫ioufev.github.io的项目,ioufev是我的用户名

SSH Key

生成SSH Key

因为本地Git仓库和GitHub仓库之间的传输是通过SSH加密传输的,GitHub需要识别是否是你推送,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送,所以需要配置ssh key。

ssh-keygen -t rsa -C "ioufev@163.com"  #创建ssh key,ioufev@163.com是我自己注册GitHub的邮箱
#然后回车3次
#运行完可以在C:\Users\用户名\.ssh查看内容,有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露,id_rsa.pub是公钥,可以公开。

Github上设置SSH keys

  • GitHub上的SSH keys:https://github.com/settings/keys
  • 点击“Add SSH Key”,填上Title(随意写,比如home),在Key文本框里粘贴id_rsa.pub文件里的全部内容。
  • 验证是否成功
ssh -T git@github.com  #在git bash里输入命令
#输入yes

配置Github账户信息

git config --global user.name 'ioufev'  #设置用户名,ioufev是我的Github用户名
git config --global user.email 'ioufev@163.com'  #设置用户名邮箱,ioufev@163.com是我自己注册GitHub的邮箱
#运行完可以在C:\Users\用户名\.gitconfig查看内容

设置域名

自定义域名教程:GitHub Pages绑定自定义域名

默认域名是:https://ioufev.github.io,ioufev是我的github用户名

我申请了免费域名:ious.ml,设置了免费SSL证书,那我的博客域名就是:https://ious.ml

3.配置

配置细节较多,单独说明

4.hexo命令

常见命令

hexo new "postName" #新建文章
hexo new page "pageName" #新建页面
hexo generate #生成静态页面至public目录
hexo server #开启预览访问端口(默认端口4000,'ctrl + c'关闭server)
hexo deploy #部署到GitHub
hexo help  # 查看帮助
hexo version  #查看Hexo的版本

缩写:

hexo n == hexo new
hexo g == hexo generate
hexo s == hexo server
hexo d == hexo deploy

写博客

定位到我们的hexo根目录,执行命令:

hexo new 我们的目标是星辰大海

hexo会帮我们在blog\source\_posts下生成相关.md文件,就是博客内容,.md是markdown文件后缀名,用文本编辑器打开编辑。

然后执行组合命令:

hexo s -g #生成并本地预览
hexo d -g #生成并上传

搭建Github博客:开始的更多相关文章

  1. 使用Hexo搭建github博客步骤,超简便

    categories: 工具 tags: git Windows 搭建博客 你只需要node环境和一个github账号就可以开工啦! 本教程适合于Windows环境,Mac教程也大同小异 利用hexo ...

  2. 【环境搭建】使用Jekyll搭建Github博客

    前言 昨天花了差不多一天的时间,使用Jekyll搭建起了一套Github博客,感觉不错,也特将搭建过程记录下来,方便有需要的朋友自行搭建. 搭建步骤 本环境是在Linux环境下搭建完成的 安装前建议使 ...

  3. 使用Hexo搭建GitHub博客(2018年Mac版)

    关于本文 本文仅记录自己学习搭建Hexo博客之时,搭建过程中掉坑的历程总结,对零基础起步的观众朋友可能缺乏某些基础技术的指导,请优先食用下述两篇优质教程: [2018更新]小白独立搭建博客-Githu ...

  4. Linux下使用Hexo搭建github博客

    找到一篇靠谱的博客,备份一下: ---------以下原文------------------ Nodejs安装 因为hexo是基于nodejs的应用,所以要先安装nodejs才可以.我这里以Ubun ...

  5. 转:20分钟教你使用hexo搭建github博客

    注册Github账号 这里我们就不多讲了,小伙伴们可以点击这里,进入官网进行注册. 创建仓库 图片来自Github 登录账号后,在Github页面的右上方选择New repository进行仓库的创建 ...

  6. 搭建github博客,hexo主题

    买个域名,多少钱的都有,看自己喜欢,可以去万网,ali嘛. 一般在windows,下载gitbash(配置公钥,全局用户名和email),node.js(不用配置). 新建github项目,添加公钥( ...

  7. 使用hexo搭建github博客

    Win7系统已经安装了node.js和npm npm install -g hexo-cli 全局安装hexo客户端 hexo init blog 在喜欢的位置初始化blog目录 cd blog np ...

  8. 用Hexo在GitHub上搭建个人博客

    我用Hexo在GitHub上搭建好了自己的博客,我的这第一篇博客就来说说搭建的过程. 1 环境配置 本文使用环境如下: Windows 10 node.js v8.1.3 git v2.13.2 np ...

  9. jekyll+github搭建个人博客总结

    jekyll+github搭建个人博客 经过一天多的折腾,终于算是搭建好了自己的个人博客,看到有些社区评论说:在windows下用jekyll搭建静态博客,简直就自讨苦吃,但是都到一半了,有什么办法呢 ...

随机推荐

  1. Matplotlib学习---用wordcloud画词云(Word Cloud)

    画词云首先需要安装wordcloud(生成词云)和jieba(中文分词). 先来说说wordcloud的安装吧,真是一波三折.首先用pip install wordcloud出现错误,说需要安装Vis ...

  2. 【XSY2703】置换 数学 置换 DP

    题目描述 对于置换\(p\),定义\(f(p)\)为最小的正整数\(k\),使得\(p^k\)为恒等置换. 你需要求对于所有的\(n\)元素置换\(p\),\(f^2(p)\)的平均值. \(n\le ...

  3. 【UOJ347】【WC2018】通道 边分治 虚树 DP

    题目大意 给你三棵树,点数都是\(n\).求 \[ \max_{i,j}d_1(i,j)+d_2(i,j)+d_3(i,j) \] 其中\(d_k(i,j)\)是在第\(k\)棵数中\(i,j\)两点 ...

  4. 【C++】VS2015/VS2017连接Mysql数据库教程

    要给C++程序连接MySQL数据库,分别需要: 安装MySQL Server 下载MySQL Connector/C++ 在IDE中配置依赖 然后就可以在代码中调用API,来连接以及操作数据库. 一. ...

  5. Shell 字符截取命令 awk

    awk命令# awk '条件1{动作1} 条件2{动作2}….' 文件名一般使用关系表达式作为条件动作:1.格式化输出 2.流程控制语句 处理cut命令无法截取空格的列 例子:截取出磁盘使用率 df ...

  6. 【JVM】查看JVM加载的类及类加载器的方法

    查看JVM加载了哪些类 java -verbose[:class|gc|jni] 在输出设备上显示虚拟机运行信息. java -verbose:class 在程序运行的时候有多少类被加载!你可以用ve ...

  7. Codeforces | CF1033D 【Divisors】

    题目大意:给定\(n(1\leq n\leq500)\)个数\(a_1,a_2\cdots,a_n(1\leq a_i\leq2\cdot10^{18})\),每个数有\(3\sim5\)个因数,求\ ...

  8. PID 通俗解释

    PID 控制原理3 个故事:看完您就明白了.1.: PID 的故事小明接到这样一个任务:有一个水缸点漏水(而且漏水的速度还不一定固定不变),要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就 ...

  9. Python学习day4 数据类型Ⅱ(列表,元祖)

    day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...

  10. js获取元素位置和style的兼容性写法

    今天说一下js获取元素位置和style的方法.当然不只是element.style那么简单.. 主角:getBoundingClientRect,getClientRects,getComputedS ...