Hexo介紹
hexo —— 快速、簡潔且高效的博客框架
安裝 Node.js
安裝 Git
根據個人電腦版本(64或32位)
下載 Git
安裝Hexo
新建文件夾'blog' 并進入
-
在空文件夾內單擊 ‘鼠標右鍵’,選擇 'Git Bash Here'
-
彈出 bash 小黑窗
- 在黑窗中,按順序輸入下面代碼
-
輸入 npm i -g hexo-cli ,使用 npm 全局安裝 hexo 的命令行工具
$ npm i -g hexo-cli
-
輸入 hexo init ,利用 hexo 命令初始化一個新的博客
$ hexo init // 根據個人網速情況,可能要等很久
初始化中...
hexo init 初始化完成!
-
輸入 npm i ,安裝包(如果網速差或報錯,建議使用 cnpm )
cnpm 的使用方法$ cnpm i // 根據個人網速情況,可能要等很久
使用 cnpm i 安裝包
-
輸入 hexo s ,開啟本地服務器
$ hexo s
- 在瀏覽器輸入:http://localhost:4000/ 查看我們的博客
寫博客
把寫好的 markdown 文件,存放到 /source/_posts 文件夾 中即可
配置 NexT 主題(可選)
Made by IIssNan @ GitHub
- NexT 主題官方文檔: http://theme-next.iissnan.com/
- 具體配置參考: NexT主題基本配置
完成部署GitHub
原理:
每個 Github 賬戶都可以創建一個 YourName.github.io 的倉庫,
這個倉庫的 master 分支是可以直接使用 YourName.github.io 在網絡中訪問的,
我們可以利用 Github 的這個功能來進行靜態頁面的展示。
有兩種部署的方式,一種是手動部署,一種是使用 hexo 命令行部署,推薦使用第二種
1. 手動部署
- 清空之前生成的博客文件
進入 bash 小黑窗,輸入 hexo clean (如果服務器開啟中,可以使用 Ctrl + c 停止)
-
生成博客文件
輸入 hexo g
$ hexo g
生成完成!
-
進入 public 文件夾中,開啟 bash 黑窗
進入 public 文件夾
開啟 bash 黑窗
-
輸入git init 初始化倉庫,并使用 add 和 commit 提交
$ git init $ git add . $ git commit -m 'blog'
git init & git add .
git commit
完成提交!
-
使用 git push 命令推送到 Github 倉庫
注意后面需要加上 --force 強制覆蓋
$ git push https://github.com/YourName/YourName.github.io.git master --force
如果使用 https 地址,需要輸入用戶名和密碼
推送完成!
-
在瀏覽器輸入 YourName.github.io 來訪問你的博客
2. 使用 hexo 命令部署
- 此方法需要配置 SSH 密鑰來免密提交,SSH 的配置方法參考 SSH配置方法
-
在 blog 文件夾中打開 bash 黑窗,安裝部署工具
輸入 npm i hexo-deployer-git --save 來安裝 hexo 部署工具
$ npm i hexo-deployer-git --save
同樣可以使用 cnpm 進行安裝(推薦)
- 找到 '~/blog/_config.yml' 文件,修改最后的代碼:
deploy: type: git repo: git@github.com:YourName/YourName.github.io.git branch: master
- 清空之前生成的博客文件
打開 bash 小黑窗
輸入 hexo clean
-
生成博客文件
輸入 hexo g
$ hexo g
生成完成!
-
部署到 Github
輸入 hexo d
$ hexo d
最后顯示 INFO Deploy done: git 代表部署成功
-
在瀏覽器輸入 YourName.github.io 來訪問你的博客
自動部署方案
[使用Travis CI自動部署Hexo博客](https://tinymark.github.io/2017/03/06/奇技淫巧/使用Travis CI自動部署Hexo博客)
總結常用命令
$ hexo clean
// 清空 ( hexo generate ) 生成的博客
$ hexo g (hexo generate)
// 生成博客文件
$ hexo s (hexo server)
// 啟動本地服務器
$ hexo d (hexo deploy)
// 按照配置好的_config.yml文件,完成部署