新建一個Github倉庫
首先在 GitHub 新建一個倉庫(Repository),名稱爲 {username}.github.io,注意這個名比較特殊,必須要是 github.io爲後綴結尾的。比如GitHub用戶名叫test,那我就新建一個test.github.io,新建完成之後就可以進行後續操作了。(這裏省略配置本地git環境,具體請谷歌。主要內容是配置SSH連接)
安裝環境
安裝Node.js
首先在電腦上安裝Node.js,下載地址在這裏,可以安裝Stable版本。
安裝完畢後,確定環境變量配置好。在cmd中輸入npm --version
顯示版本,即配置成功。
安裝Hexo
Hexo相當於博客的底層框架。Hexo提供命令行工具,用於快速創建項目、頁面、編譯和部署Hexo博客。
安裝命令如下:
npm install -g hexo-cil
初始化博客
先在本地新一個文件夾,作爲blog的源碼以及生成的靜態網頁存儲的地方。進入文件夾,右鍵選擇git bash here
。
首先使用命令新建項目:
hexo init {name}
等待完成過後,文件夾下出現hexo的初始化文件,文件結構如下:
.
├── node_modules //依賴安裝目錄
├── scaffolds //模板文件夾,新建的文章將會從此目錄下的文件中繼承格式
| ├── draft.md //草稿模板
| ├── page.md //頁面模板
| └── post.md //文章模板
├── source //資源文件夾,用於放置圖片、數據、文章等資源
| └── _posts //文章目錄
├── themes //主題文件夾
| └── landscape //默認主題
├── .gitignore //指定不納入git版本控制的文件
├── _config.yml //站點配置文件
├── db.json
├── package.json
└── package-lock.json
使命命令讓Hexo編譯生成HTML代碼:
hexo g
使用命令讓網站在本地運行:(在本地4000端口上查看博客)
hexo s
部署
接下來我們先將這個初始化的博客部署到Github Pages上面驗證一下其可用性。成功之後我們在進行其他操作。
在部署之前,我們需要修改本地文件夾中根目錄下的_config.yml
。找到Deloyment,將你自己的倉庫連接地址填入,然後選擇master分支。修改後文件參考:
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: {將這裏含{}替換爲你的倉庫地址}
branch: master
還需要額外安裝一個支持GIT的部署插件,才能拿順利部署到github上面:
npm install hexo-deployer-git --save
完成準備工作後,執行部署命令:
hexo d
接收到INFO Deploy done: git
信息後,blog就成功部署到github page上面,直接訪問你的倉庫URL就能打開你的blog了,內容與在本地生成的一模一樣。
這裏注意一點:在倉庫master中的內容是本地目錄下的public的內容。也就是說hexo把編譯後的靜態頁面內容上傳到github的master分支上面。
如何將博客源碼放到github上,我們在後面的高級應用再說。
配置站點基本信息
站點基本信息配置文件在根目錄的_config.yml中保存。找到site區域,這裏可以配置站點標題、副標題等等信息:
# Site
title: 這是站點標題
subtitle: 這是站點副標題
description: 這是站點描述
keywords: "這是站點關鍵字"
author: 這是站點作者
另外還可以設置一下語言,如果要設置爲漢語的話可以將 language 的字段設置爲 zh-CN,修改如下:
language: zh-CN
到這裏就配置完站點的基本信息,其他參數請參看官方說明,然後按需修改。
修改主題
接下來,我們就來安裝Next主題。主題的github地址。
在本地博客文件夾的根目錄下,clone主題倉庫:
git clone https://github.com/theme-next/hexo-theme-next themes/next
執行完畢後,next主題源碼就會出現在thems/next。
然後需要修改hexo中的主題選項設置,也就是我們需要修改根目錄下的_config.yml文件,將theme的參數修改爲next:
theme: next
重新打開blog,就能看到加載的新主題了。
主題配置
樣式
Next主題提供了4種細分風格樣式,通過修改/theme/next/_config.yml文件中的scheme參數選擇:
# scheme: Muse
#scheme: Mist
scheme: Pisces
#scheme: Gemini
favicon
favicon就是站點標籤欄的小圖標,默認使用Hexo的小圖標。可以利用這個網站,將圖片轉化爲站點小圖標,圖標保存在/themes/next/source/images下面。
然後在主題配置文件中配置favicon選項,把一些相關路徑配置後,刷新網頁圖標就會被刷新。
favicon:
small: /images/favicon-16x16.png
medium: /images/favicon-32x32.png
apple_touch_icon: /images/apple-touch-icon.png
safari_pinned_tab: /images/safari-pinned-tab.svg
avater
avatar 就是類似於站點的頭像,如果設置了這個,會在站點的作者信息旁邊額外顯示一個頭像。
將頭像保存在/themes/next/source/images/,然後在主題_config.yml文件下編輯avatar的配置,填入頭像的路徑即可。
# Sidebar Avatar
avatar:
# In theme directory (source/images): /images/avatar.gif
# In site directory (source/uploads): /uploads/avatar.gif
# You can also use other linking images.
url: /images/avatar.png
# If true, the avatar would be dispalyed in circle.(是否以圓形顯示)
rounded: true
# If true, the avatar would be rotated with the cursor.(是否開啓旋轉效果)
rotated: true
文章
現在整個站點只有一篇文章,那麼我們怎樣來增加其他的文章呢?
這個很簡單,只需要調用 Hexo 提供的命令即可,比如我們要新建一篇「HelloWorld」的文章,命令如下:
hexo new hello-world
創建的文章會出現在 source/_posts
文件夾下,是 MarkDown 格式。
在文章開頭通過如下格式添加必要信息:
---
title: 標題 # 自動創建,如 hello-world
date: 日期 # 自動創建,如 2019-09-22 01:47:21
tags:
- 標籤1
- 標籤2
- 標籤3
categories:
- 分類1
- 分類2
---
開頭下方撰寫正文,MarkDown 格式書寫即可。