Hexo + GitHub
Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
安装 Hexo
安装 Node.js
作用:用来生成静态页面的 到 Node.js官网 下载相应平台的最新版本,一路安装即可。
安装 Git
作用:把本地的 hexo内容 提交到 GitHub 上去
申请 GitHub
作用:是用来做博客的远程创库、域名、服务器
安装 hexo
使用 npm 安装 Hexo
$ sudo npm install -g hexo
(我在MAC执行的这个)npm install -g hexo-cli
使用 Hexo
初始化
- 建立一个博客文件夹,并初始化博客,
为文件夹的名称,可以随便起名字 hexo init <folder>
- 进入博客文件夹,
为文件夹的名称 cd <folder>
- node.js的命令,根据博客既定的dependencies配置安装所有的依赖包
npm install
1 | . |
- _config.yml 网站的配置信息
- package.json 应用程序的信息
- scaffolds 模版 文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件。Hexo的模板是指在新建的markdown文件中默认填充的内容。例如,如果您修改scaffold/post.md中的Front-matter内容,那么每次新建一篇文章时都会包含这个修改。
- source 资源文件夹是存放用户资源的地方。除 _posts 文件夹之外,开头命名为 _ (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。
- themes 主题 文件夹。Hexo 会根据主题来生成静态页面。
配置
在 _config.yml 中修改大部份的配置。
网站
- title 网站标题
- subtitle 网站副标题
- description 网站描述 主要用于SEO,告诉搜索引擎一个关于您站点的简单描述,通常建议在其中包含您网站的关键词
- author 您的名字 文章的作者
- language 网站使用的语言
- timezone 网站时区。Hexo 默认使用您电脑的时区。时区列表。比如说:America/New_York, Japan, 和 UTC 。
网址
- url 网址
- root 网站根目录
- permalink 文章的 永久链接 格式 :year/:month/:day/:title/
- permalink_defaults 永久链接中各部分的默认值
目录
- source_dir 资源文件夹,这个文件夹用来存放内容。 source
- public_dir 公共文件夹,这个文件夹用于存放生成的站点文件。 public
- tag_dir 标签文件夹 tags
- archive_dir 归档文件夹 archives
- category_dir 分类文件夹 categories
- code_dir Include code 文件夹 downloads/code
- i18n_dir 国际化(i18n)文件夹 :lang
- skip_render 跳过指定文件的渲染,您可使用 glob 表达式来匹配路径。
文章
- new_post_name 新文章的文件名称 :title.md
- default_layout 预设布局 post
- auto_spacing 在中文和英文之间加入空格 false
- titlecase 把标题转换为 title case false
- external_link 在新标签中打开链接 true
- filename_case 把文件名称转换为 (1) 小写或 (2) 大写 0
- render_drafts 显示草稿 false
- post_asset_folder 启动 Asset 文件夹 false
- relative_link 把链接改为与根目录的相对位址 false
- future 显示未来的文章 true
- highlight 代码块的设置
分类 & 标签
- default_category 默认分类 uncategorized
- category_map 分类别名
- tag_map 标签别名
日期 / 时间格式
- date_format 日期格式 YYYY-MM-DD
- time_format 时间格式 H:mm:ss
分页
- per_page 每页显示的文章量 (0 = 关闭分页功能) 10
- pagination_dir 分页目录 page
扩展
- theme 当前主题名称。值为false时禁用主题
- deploy 部署部分的设置
一些常用命令
1 | // 新建一个网站。如果没有设置 folder ,Hexo 默认在目前的文件夹建立网站。 |
部署到 GitHub
一个hexo分支用来存放网站的原始文件,一个master分支用来存放生成的静态网页。
- 创建仓库
- 克隆你的仓库到本地
- 创建两个分支:master 与 hexo
- 切换到 hexo 分支
- 在根目录依次执行
npm install hexo
、hexo init
、npm install
- 安装
hexo-deployer-git插件
,在根目录运行:npm install hexo-deployer-git --save
- 修改站点根目录下
_config.yml
文件中的Deployment
部分1
2
3
4
5
6# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: Clone with HTTPS Use Git or checkout with SVN using the web URL.
branch: master - 提交到git,依次执行
git add .
、git commit -m "..."
、git push origin hexo
- 执行
hexo g -d
生成网站并部署到GitHub的master上。
关于日常的改动流程
- 在本地对博客进行修改(添加新博文、修改样式等等)后,提交到 hexo 分支
- 执行
hexo g -d
生成网站并部署到GitHub的master上。
更换电脑
- 克隆你的仓库到本地
- 切换到 hexo 分支
- 在根目录依次执行
npm install hexo
、npm install
- 安装
hexo-deployer-git插件
,在根目录运行:npm install hexo-deployer-git --save
- hexo在5.0之后把swig给删除了需要自己手动安装
npm i hexo-renderer-swig
- 在本地对博客进行修改(添加新博文、修改样式等等)后,提交到 hexo 分支
- 执行
hexo g -d
生成网站并部署到GitHub的master上。
参考的文章