环境配置
安装homebrew
安装git和node
brew install git
brew install node //node中已经包含npm
cd到博客根目录,安装hexo命令行工具hexo-cli
npm install hexo-cli -g
cd到博客根目录,初始化hexo
hexo init
安装Hexo主题,以edinburgh为例
$ git clone https://github.com/sharvaridesai/hexo-theme-edinburgh themes/edinburgh
修改_config.yml文件中关于主题的配置
update your blog's main _config.yml to set the theme to edinburgh:
# Extensions
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme: edinburgh
新建一篇文章
hexo new post "post_name"
根据当前目录下文件生成静态网页
hexo g //g == generate
启动本地服务器预览
localhost:4000
在Mac terminal下按ctrl+C结束
hexo s //s == server
创建User Pages仓库
1、每一个Github账户只能有一个User Pages,主要用来展示一个账户中最最重要的项目
2、命名为username.github.io的repo中的内容将会出现在username.github.io上
3、Repository Name的格式必须为:username.github.io
然后根据提示一直下一步即可
部署到GitHub
cd到博客根目录,安装插件
npm install hexo-deployer-git --save
注:其他插件根据需要,可自行安装
安装其他依赖:npm install
更新
_config.yml
,进行如下修改
hexo clean #清空public文件夹下生成的静态文件和db.json文件
hexo generate #重新生成静态文件和db.json
hexo deploy #或者hexo d,按照配置文件_config.yml发布到 github pages 服务器上
目录结构
.
├── .deploy #需要部署的文件
├── node_modules #Hexo插件
├── public #生成的静态网页文件
├── scaffolds #模板
├── source #博客正文和其他源文件,404、favicon、CNAME 都应该放在这里
| ├── _drafts #草稿
| └── _posts #文章
├── themes #主题
├── _config.yml #全局配置文件
└── package.json
全局配置 _config.yml
# Hexo Configuration
## Docs: http://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/
# Site #站点信息
title: #标题
subtitle: #副标题
description: #站点描述,给搜索引擎看的
author: #作者
email: #电子邮箱
language: zh-CN #语言
# URL #链接格式
url: #网址
root: / #根目录
permalink: :year/:month/:day/:title/ #文章的链接格式
tag_dir: tags #标签目录
archive_dir: archives #存档目录
category_dir: categories #分类目录
code_dir: downloads/code
permalink_defaults:
# Directory #目录
source_dir: source #源文件目录
public_dir: public #生成的网页文件目录
# Writing #写作
new_post_name: :title.md #新文章标题
default_layout: post #默认的模板,包括 post、page、photo、draft(文章、页面、照片、草稿)
titlecase: false #标题转换成大写
external_link: true #在新选项卡中打开连接
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
highlight: #语法高亮
enable: true #是否启用
line_number: true #显示行号
tab_replace:
# Category & Tag #分类和标签
default_category: uncategorized #默认分类
category_map:
tag_map:
# Archives
2: 开启分页
1: 禁用分页
0: 全部禁用
archive: 2
category: 2
tag: 2
# Server #本地服务器
port: 4000 #端口号
server_ip: localhost #IP 地址
logger: false
logger_format: dev
# Date / Time format #日期时间格式
date_format: YYYY-MM-DD #参考http://momentjs.com/docs/#/displaying/format/
time_format: H:mm:ss
# Pagination #分页
per_page: 10 #每页文章数,设置成 0 禁用分页
pagination_dir: page
# Disqus #Disqus评论,替换为多说
disqus_shortname:
# Extensions #拓展插件
theme: landscape-plus #主题
exclude_generator:
plugins: #插件,例如生成 RSS 和站点地图的
- hexo-generator-feed
- hexo-generator-sitemap
# Deployment #部署,将 lmintlcx 改成用户名
deploy:
type: git
repo: github创库地址.git
branch: master
Hexo命令行使用
常用命令:
hexo help #查看帮助
hexo init #初始化一个目录
hexo new "postName" #新建文章
hexo new page "pageName" #新建页面
hexo generate #生成网页,可以在 public 目录查看整个网站的文件
hexo server #本地预览,'Ctrl+C'关闭
hexo deploy #部署.deploy目录
hexo clean #清除缓存,强烈建议每次执行命令前先清理缓存,每次部署前先删除 .deploy 文件夹
简写:
hexo n == hexo new
hexo g == hexo generate
hexo s == hexo server
hexo d == hexo deploy