简介
以前
- 过往一直喜欢自己在pdf 软件上记录笔记,后来marginNode 又再一次改变了自己学习方式
- 自己学习会有局限性,有的时候会缺少动力
问题
- 随性,整理blog 会觉得麻烦,要把自己学到的东西,按照别人易读的角度来写自己组织语言,无形中觉得浪费时间
- 遗忘+懒,会坚持不下来,总是忘
- 不喜欢被别人随意评价,这点要改…… 知识 share, 一起讨论学习的效率才会高
- 写作能力差
决定建站记录自己学习
配置hexo
单纯是工具,不追究原理,先想办法记住怎么用
hexo 准备
- git 安装
npm install git
- node 安装
brew install node
- hexo 安装
npm install -g hexo-cli
P.S.
npm is the package manager for the Node JavaScript platform. It puts
modules in place so that node can find them, and manages dependency
conflicts intelligently.
It is extremely configurable to support a wide variety of use cases.
Most commonly, it is used to publish, discover, install, and develop
node programs.
- hexo 初始化
自己blog 的目录,下文全是使用,在该目录下执行命令
~/Documents/blog // blog 目录
hexo init //初始化hex
// 创建JavaScript package dependencies
npm install package
_config.yml // 站点的配置信息
package.json // 应用程序的信息
scanffolds // 模板文件夹
source // 存放用户资源的文件夹
themes // 主题文件夹,Hexo会根据主题生成静态页面
blog 效果
~/Documents/blog ᐅ hexo s
浏览器打开 http://localhost:4000 可以看到自己的blog
配置
将blog文件放到github上
- 在github 上面创建 repository 命名 xxx.github.io
- 打开 _config.yml, deploy: 配置
deploy:
type: git
repository: https://github.com/yourname/xxx.github.io.git
branch: master
- hexo g 生成(如果报错执行npm install hexo --save, 然后在 hexo g)
- hexo d 部署到 github (出错则执行npm install hexo-deployer-git --save 再执行hexo d)
- 先把本地的ssh keys 添加到github 上,如果有已经添加了忽略
- ssh-keygen -t rsa -C "github_regist_email@exampl" 生成 ssh kye
- open ~/.ssh打开文件夹,打开id_rsa.pub文件,将里面信息复制到GitHub的Add ssh key路径GitHub->Setting->SSH keys->add SSH key中即可。Title随便填个,将复制的内容粘贴到key中,点击Add key完成添加。
- 部署完后打开 github 可以看到仓库中已经存在本地 hexo 相关文件
github 创建域名
- 找到刚才创建 repository->settings 找到 Github Pages
- None->master
- theme 可以不填
hexo命令快捷键
- 启动服务
hexo server(缩写 s) # Hexo 会监视文件变动并自动更新,您无须重启服务器。
hexo s -p 5000 # 更改端口
hexo s -i 192.168.1.1 # 自定义 IP
- 清除缓存
hexo clean
- 新建文件夹(自动在文件夹下新建index.md)
hexo new page "file"
# ..\blog\source\file\index.md
- 新建文章 布局方式: | 布局 | 路径 | | :-------- | :--------| | post | source/_posts | | page | source | | draft | source/_drafts |
hexo new [layout] <title> (缩写 n,layout 可选[])
hexo n fileName # 默认是 _config.yml 里面 default_layout: 属性配置的
hexo n post fileName
- 生成/编译/发布(生成静态网页)
hexo generate(缩写 g)
hexo g --watch # 监视文件变动
hexo g -d # 生成文件并部署到 github上
- 部署
hexo deploy(缩写 d)
主题设置
NexT
使用 NexT 的原因是:这个主题文档全,维护人员多,照着上面学就可以学到很多配置上的东西
- git clone github.com/theme-next/… themes/next
- _config.yml 中属性 theme: next
- 重新生成静态页 hexo g
- hexo s 看看效果
- hexo d 部署到github
NexT 配置在它自己的 _config.yml 文件中
在 NexT 主题上添加 Plugins
- 添加在 _config.yml 中
# `Follow me on GitHub` banner in the top-right corner.
github_banner:
enable: false
permalink: https://github.com/Changzw
title: Follow me on GitHub