Building Hugo
Contents
最近覺得自己用 WordPress 架的部落格因為功能太多了,也不支持 Markdown,寫 blog 的成本變得挺高的,所以想要來建一個單純一點的地方放自己的筆記。一切精簡化,所以也不想煩惱域名之類,最後選了沒有用過的 Hugo 架在 GitHub 上。
使用 hugo 建立部落格
需求
- brew
- Git
安裝 hugo
-
安裝
1
brew install hugo
-
確認安裝狀況
1
hugo version
印出版本代表有安裝成功
1
Hugo Static Site Generator v0.80.0/extended darwin/amd64 BuildDate: unknown
-
用 hugo 生成 blog
1
hugo new site {blog name}
這時候用
ls
可以發現有一個你的 blog name 的資料夾,cd
到裡面看大概有這些東西,你現在在的這個資料夾就是 blog 的根目錄1 2 3 4 5 6 7
drwxr-xr-x 3 username staff 96 Jan 24 15:01 archetypes -rw-r--r-- 1 username staff 82 Jan 24 15:01 config.toml drwxr-xr-x 2 username staff 64 Jan 24 15:01 content drwxr-xr-x 2 username staff 64 Jan 24 15:01 data drwxr-xr-x 2 username staff 64 Jan 24 15:01 layouts drwxr-xr-x 2 username staff 64 Jan 24 15:01 static drwxr-xr-x 2 username staff 64 Jan 24 15:01 themes
-
下載主題
到 hugo themes 選一個主題。 跟著該主題在 download 裡的教學下載。這裡以我選的主題 meme 為例。
1 2 3
~ $ cd blog // 剛剛 hugo 幫你用 blog name 創建的資料夾 ~/blog $ git init ~/blog $ git submodule add --depth 1 https://github.com/reuixiy/hugo-theme-meme.git themes/meme
下載完成後可以
cd themes/
去確認你有下載完成。 -
設置主題
提示: 每一個主題的設置部分可能會有不同,請參考 GitHub 上面的教學。 meme 提供簡單的配置檔,可以直接拿這個檔案取代掉原本的 toml 檔案。
1
~/blog $ rm config.toml && cp themes/meme/config-examples/zh-cn/config.toml config.toml
如果有進行其他設定,或者不想直接用這個檔案,可以手動修改主題欄位。
開始寫文章
- 建立文章
1
~/blog $ hugo new "posts/hello-world.md"
這時 hugo 會在
blog/content/
底下創建posts/hello-world.md
,想確認的話可以自己cd
進去用ls
確認。 然後我會用 VScode 打開檔案寫文章。 寫完之後存擋就可以了 - 預覽自己寫好的文章
1
~/blog $ hugo server
這個指令會跑一個在本地的 server,可以方便我們預覽文章。 如果你的檔案還是草稿,但你想要預覽,可以在後面加上 flag
-D
來檢視還是草稿的文章。
部署到 GitHub
-
到你自己的 GitHub 上去,點開 Create a new repository,Repository name 一定要寫全小寫的自己 GitHub 名字+github.io 這個我沒有深究原因,大概是因為網址地址會長這樣所以直接這樣命名吧。如果有人知道詳細原因可以再留言和我說。
-
Build
1
hugo --baseUrl="https://keronscribe.github.io/"
這個指令會在根目錄下生成一個 public 資料夾,裡面是把 content 得東西轉成 html 的檔案。這就是我們要推上 GitHub 的東西們。
-
git init 本地 public 資料夾 到
/public/
裡,init 一個 git repo1 2 3
git init git add . git commit -m "my 1st commit"
-
連到遠端
1
git remote add origin https://github.com/{github account}/{github repo}.git // 這一行在 GitHub 的初始 repo 裡應該也有
推上去
1
git push -u origin master
-
完成。現在就可以透過你的 baseURL 連到你的 blog 了。 有時候 deploy 可能需要花一些些時間,另外有可能 GitHub page 也要打開。
Hugo 還有不少相關指令可以使用,有興趣的朋友可以自己上官方網站看。 感謝你的閱讀,希望大家架 Blog 順利。
※後記,我後續也有機會換主題樣式,不一定是繼續採用 MemE ,如果有需要,大家可以看頁腳取得目前的主題資訊。
Author Cian
LastMod 2021-01-24