一、安装
1、安装 node.js
1 | https://nodejs /en/ 下载安装 |
2、安装 git
1 | https://git-scm.com/ 下载安装 |
3、安装 Hexo
1 | 执行安装命令 npm install -g hexo-cli |
二、建站
1、创建存放博客的文件夹blog
2、在该文件夹下,打开 git bash
3、初始化hexo,在该文件夹下新建所需文件
1 | 执行命令 hexo init |
4、创建一篇新文章
1 | hexo new [layout] <title> |
布局(Layout)
Hexo 有三种默认布局:post、page 和 draft,它们分别对应不同的路径,而自定义的其他布局和 post 相同,都将储存到 source/_posts 文件夹
1 | 布局 路径 |
不要处理我的文章
1 | 如果你不想你的文章被处理,你可以将 Front-Matter 中的 layout: 设为 false |
文件名称
Hexo默认以标题做为文件名称, 但您可编辑 new_post_name 参数来改变默认的文件名称, 举例来说, 设为:
1 | year-:month-:day-:title.md 可让您更方便的通过日期来管理文章 |
草稿
刚刚提到了 Hexo 的一种特殊布局:draft,这种布局在建立时会被保存到 source/_drafts 文件夹,您可通过 publish 命令将草稿移动到 source/_posts 文件夹,该命令的使用方式与 new 十分类似,您也可在命令中指定 layout 来指定布局
1 | hexo publish [layout] <title> |
模版(Scaffold)
在新建文章时,Hexo 会根据 scaffolds 文件夹内相对应的文件来建立文件,例如:
1 | hexo new photo "My Gallery" |
在执行这行指令时,Hexo 会尝试在 scaffolds 文件夹中寻找 photo.md,并根据其内容建立文章,以下是您可以在模版中使用的变量:
1 | 描述 |
Front-matter
Front-matter 是文件最上方以 — 分隔的区域,用于指定个别文件的变量,举例来说:
1 | title: Hello World |
分类和标签
只有文章支持分类和标签,您可以在 Front-matter 中设置。在其他系统中,分类和标签听起来很接近,但是在 Hexo 中两者有着明显的差别:分类具有顺序性和层次性,也就是说 Foo, Bar 不等于 Bar, Foo;而标签没有顺序和层次
1 | categories: |
分类方法的分歧
如果有过使用WordPress的经验,就很容易误解Hexo的分类方式。WordPress支持对一篇文章设置多个分类,而且这些分类可以是同级的,也可以是父子分类。但是Hexo不支持指定多个同级分类。下面的指定方法:
1 | categories: |
JSON Front-matter
除了 YAML 外,你也可以使用 JSON 来编写 Front-matter,只要将 — 代换成 ;;; 即可
1 | "title": "Hello World", |
三、配置
在 _config.yml 中修改大部份的配置
1 | title 网站标题 |
其中,description 主要用于SEO,告诉搜索引擎一个关于您站点的简单描述,通常建议在其中包含您网站的关键词。author 参数用于主题显示文章的作者。)
1 | 参数 描述 默认值 |
比如,一个页面的永久链接是:
1 | pretty_urls: |
此时页面的永久链接会变为:
如果网站存放在子目录中,例如 http://yoursite.com/blog,则将 url 设为 http://yoursite.com/blog 并把 root 设为 /blog/
覆盖主题配置
通常情况下,Hexo 主题是一个独立的项目,并拥有一个独立的 _config.yml 配置文件。
你可以在站点的 _config.yml 配置文件中配置你的主题,这样你就不需要 fork 一份主题并维护主题独立的配置文件。
以下是一个覆盖主题配置的例子:
1 |
|
最终主题配置的输出是:
1 | { |
四、指令
init————————–>
1 | hexo init [folder] |
new————————–>
1 | hexo new [layout] <title> |
generate————————–>
1 | hexo generate |
publish————————–>
1 | hexo publish [layout] <filename> |
server————————–>
1 | hexo server |
deploy————————–>
1 | hexo deploy |
render————————–>
1 | hexo render <file1> [file2] ... |
migrate————————–>
1 | hexo migrate <type> |
clean————————–>
1 | hexo clean |
list————————–>
1 | hexo list <type> |
version————————–>
1 | hexo version |
选项————————–>
安全模式
1 | hexo --safe |
调试模式
1 | hexo --debug |
简洁模式
1 | hexo --silent |
自定义配置文件的路径
1 | 使用 custom.yml 代替默认的 _config.yml |
显示草稿
1 | hexo --draft |
自定义 CWD
1 | hexo --cwd /path/to/cwd |
五、关于ssh密钥
1、检查现有密钥
① 打开 Git Bash。
② 输入 ls -al ~/.ssh 以查看是否存在现有 SSH 密钥:
1 | $ ls -al ~/.ssh |
③ 检查目录列表以查看是否已经有 SSH 公钥。 默认情况下,公钥的文件名是以下之一:
1 | id_rsa.pub |
2、github
生成新 SSH 密钥
① 打开 Git Bash。
② 粘贴下面的文本(替换为您的 GitHub 电子邮件地址)。
1 | $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com" |
③ 提示“Enter a file in which to save the key(输入要保存密钥的文件)”时,按 Enter 键。 这将接受默认文件位置。
1 | Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter] |
④ 在提示时输入安全密码。
1 | Enter passphrase (empty for no passphrase): [Type a passphrase] |
3、gitee
生成/添加新 SSH 密钥
码云提供了基于SSH协议的Git服务,在使用SSH协议访问仓库仓库之前,需要先配置好账户/仓库的SSH公钥。
可以按如下命令来生成 sshkey:
1 | ssh-keygen -t rsa -C "xxxxx@xxxxx.com" |
按照提示完成三次回车,即可生成 ssh key。通过查看 ~/.ssh/id_rsa.pub 文件内容,获取到你的 public key
1 | cat ~/.ssh/id_rsa.pub |
复制生成后的 ssh key,通过仓库主页 「管理」->「部署公钥管理」->「添加部署公钥」 ,添加生成的 public key 添加到仓库中。
添加后,在终端(Terminal)中输入
1 | ssh -T git@gitee.com |
4、coding
生成新 SSH 密钥
打开命令行终端输入 ssh-keygen -m PEM -t rsa -b 4096 -C “your.email@example.com“( 邮箱),连续点击 Enter 键即可。
1 | ssh-keygen -t rsa -b 4096 -C "your.email@example.com" |
添加公钥
CODING 提供账户 SSH 公钥和项目 SSH 公钥设置。本质上账户公钥和部署公钥是一样的,只是关联的方式不同。
一个 SSH 公钥文件,如果和 CODING 账户关联,便称为账户 SSH 公钥,配置后拥有账户下所有项目的读写权限;如果和某一个项目关联,则称为部署公钥,配置后默认拥有该项目的只读权限。
添加账户公钥
① 在终端输入 open ~/.ssh,用文本编辑器打开 id_rsa.pub 文件(此处是生成公钥的默认名称,如果生成公钥时采用了其他名称,打开相对应的文件即可),复制全部内容。
② 登录 CODING ,点击右上角【个人设置】,选择菜单【SSH 公钥】,点击【新增公钥】按钮。
③ 将第一步中复制的内容填写到【公钥内容】一栏,公钥名称按需填写即可。
④ 设定公钥有效期,可选择具体日期或设置永久有效。
⑤ 点击【添加】,然后输入账户密码即可成功添加公钥。
⑥ 完成后在命令行测试,首次建立链接会要求信任主机。命令 :
1 | ssh -T git@e.coding.net |
添加部署公钥
① 在终端输入 open ~/.ssh,用文本编辑器打开 id_deploy.pub 文件(此处部署公钥名称为 id_deploy.pub,在生成部署公钥的时候完全可以自定义名称),复制全部内容。
② 登录 CODING,进入目标项目,点击【代码仓库】-> 【仓库设置】-> 【部署公钥】->【新建部署公钥】。
③ 将第一步中复制的内容填写到【公钥内容】一栏,公钥名称自定义。
④ 点击【新建】,然后输入账户密码即可成功添加部署公钥
⑤ 部署公钥默认拥有该项目的只读权限,如果需要获取推送权限,请勾选部署公钥设置里的【授予推送权限】。