利用 Hexo 與 GitPage 建置個人 Blog
前言
本文主要介紹如何使用 Hexo 來製作個人 Blog,並利用 GitPage 進行自動更新部署,讓沒接觸過新手小白也能輕鬆上手。
環境建置
在開始之前,須先:
建置 Hexo
安裝 Hexo
使用 npm 來安裝 hexo (須先安裝 Node.js)
1 | |
安裝成功後,輸入以下指令可查看版本。
1 | |

安裝 Hexo Git
1 | |
接下來即可初始化我們的部落格了。
執行下方指令,Hexo 就會在指定資料夾
1 | |
安裝完成之後,docs 的目錄結構如下:
_config.yml網站 全域配置 檔案,可以在此設置大部分的設定,其設定是用 yaml 格式編寫。package.jsonNode.js 的套件版本控制。scaffoldsHexo 釋出文章的時候使用,建立新文章時,會根據 scaffold 來建立檔案。sourceMarkDown 和各種原始檔,放置內容的地方。themesHexo 的主題資料夾,會根據主題來產生靜態檔案。
本地端啟動
1 | |
亦可用 hexo g,產生靜態檔案,會在目錄下產生 public 資料夾。
1 | |
亦可用 hexo s,啟動伺服器,預設是 http://localhost:4000/
1 | |
亦可用 hexo d,部署網站。( 如:github、heroku 等 )
完成上述步驟後,在瀏覽器中即可看到本地端啟動的個人網頁了。
部署到 GitHub
新建 GitHub Repository
接著,我們可以在 Github 的主分支上來建立我們的文件了。有兩種方式可以達成:
- 在一個已存在的專案中建立文件
- 建立一個新的專案 Create a new repository
簡單起見,假設我們新建立了一個名為 yourname.github.io 的倉庫(repository),當然你也可以用一個已經存在的專案繼續下面的操作。

請將上面的 yourname 替換成你 GitHub 的帳號名稱

創建完新 repo 的畫面
再來,到已創立的指定資料夾 _config.yml 的檔案。
1 | |
開啟之後,拉到檔案最底部,可以看到
1 | |
將以下資訊對應輸入
1 | |
注意:
設定中的 : 後一定要有一個空格
將上面的 yourname 改成你的 GitHub 帳號名稱
連線上傳 GitHub
過程中,可能會需要輸入GitHub的帳號、密碼做授權。
使用下方的命令在本地 clone 專案:
1 | |
將 USERNAME 替換為你的使用者名稱,REPOSITORY 替換為你的專案名稱。
1 | |
為 commit 留註解。
1 | |
手動新增 GitHub 遠端 branch 名稱、連結
1 | |
推到你的 GitHub master。
1 | |
這樣就把本地的檔案上傳到 GitHub 囉!
設定 GitPage
打開 GitHub 專案的 Setting,下面有個 GitHub Page 的地方,將其勾選設定,接著就可以在你個人的 https://yourname.github.io/ 看到畫面了。

設定專屬個人 Domain
有了個人的 GitHub Page 後,若想把網址換成專屬網域名稱,提供以下兩個網站可供參考:
- Gandi.net
- Godaddy
進去網站後,挑選並確定了自己想購買的網址後,在購物車結帳頁面可以選擇自己想要購買的年限,至少要買一年,若一年後還要再使用可以自行續約。
以 Gandi.net 為例,購買後,到 域名-區域檔紀錄-新增

新增紅框中的四筆 DNS
新增 DNS 紀錄 (可參考 GitHub Page 官方說明文件
1 | |
再來,到 GitHub 的 Setting,Custom Domain 欄位輸入購買的網址,按儲存就設定完成了。
小建議,下方的 HTTPS 也一同勾選。

稍待一陣子,就可以用新購買的網址進入個人網站囉。
更換主題
Hexo 預設的主題是 landscape,而我們可以到 Hexo主題庫 來挑選我們欲安裝的主題,以下以 Ocean 為例。
安裝 Ocean
安裝 Ocean
1 | |
修改網站設定 <folder>/ _config.yml
1 | |
在 <folder>/theme/ocean/ 裡面的 _config.yml 也可以自己設定
1 | |
重新啟動 server
1 | |
這樣就更改成功了!

修改後的 Ocean 主題
發佈文章
1 | |
你可以在指令中指定文章的佈局(layout),預設為 post ,也可以透過修改 _config.yml 中的 default_layout 設定來指定預設佈局。
佈局(Layout)
Hexo 有三種預設佈局:post、page 和 draft,它們分別對應不同的路徑,而你所自定的其他佈局和 post 相同,都儲存至 source/_posts 資料夾。

1 | |
刪除文章
首先進入到 source /_post 資料夾中,找到 helloworld.md,在本地直接執行刪除。

執行以下操作,一段時間後就會發現文章已刪除。
1 | |
其他指令
1 | |
附錄:Hexo 官方參考文件