Wednesday, December 21, 2016

gitbook 與 gh-pages

最近因為要做給北京快網運維看的教材,為了讓中國也能閱讀,我用了 gitbook 。其實也就是一種比 wiki 再更簡單的 blog 而已。然而,好景不常,沒有多久,快網的人就跟我講,我發表的 gitbook 速度太慢了。他們沒有辦法閱讀。

於是我考慮,換成用 github.io 的 gh-pages 來放我的 gitbook 。本來我一直被 gitbook 的選項誤導,以為我只要讓 gitbook 的內容和我的 github 帳號同步 (sync) 就可以了,後來實驗之後,才發現,完全不是這麼回事。正確的作法是這樣子:

1. 先把 gitbook 裡的所有檔案 md 檔、圖檔,都用 git 抓到本地端的資料夾,例如 ~/book/。
2. 在本地端安裝應用程式
     npm install gitbook-cli -g
3. 將 md 檔,輸出成為靜態網站,指定 ~/book 為「圖書目錄」,指定 ~/book/docs 為「輸出目錄」
    gitbook build ~/book  ~/book/docs
4. 將 ~/book 資料夾內的內容,同步到自己 github 帳號下的 book repository 的 master branch
5. 在自己的 github 帳號做 gh-pages 的設定,讓 gh-pages 的 source 指向 master branch 裡的 docs 資料夾。