GitBook 是一個基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 來制作精美的電子書。
GitBook支持輸出以下幾種文檔格式:
- 靜態站點:GitBook默認輸出該種格式
- PDF:需要安裝gitbook-pdf依賴
- eBook:需要安裝ebook-convert
1、gitbook的安裝
首先要確保安裝了node (node -v 檢測是否安裝,未安裝去node官網下載安裝)
然后安裝gitbook:
sudo npm install gitbook-cli -g // 安裝gitbook
gitbook --version // 查看是否安裝成功
gitbook help // 查看gitbook命令
2、簡單使用
- 使用 gitbook init 初始化書籍目錄
- 使用 gitbook serve 編譯書籍
首先,創建如下目錄結構:(README.md、SUMMARY.md2個必要文件)
book/
├── README.md
└── SUMMARY.md
其中 README.md 是對書籍的簡單介紹:
$ cat book/README.md
# README
This is a book
SUMMARY.md是書籍的目錄結構:
$ cat book/SUMMARY.md
# SUMMARY
* [Chapter1](chapter1/README.md)
* [Section1.1](chapter1/section1.1.md)
* [Section1.2](chapter1/section1.2.md)
* [Chapter2](chapter2/README.md)
創建2個文件后,使用gitbook init
,它會為我們創建 SUMMARY.md中的目錄結構
書籍目錄創建成功后,就可以使用gitbook serve
來編譯和預覽書籍了??!
gitbook serve命令實際上會先調用gitbook build編譯書籍,完成以后會打開一個web服務器,監聽在本地的4000端口。
3、結合github存儲書籍
創建 gh-pages 分支 用于展示靜態資源
執行如下命令來創建分支,并且刪除不需要的文件:(實際中只用了git checkout --orphan gh-pages)
$ git checkout --orphan gh-pages
$ git rm --cached -r .
$ git clean -df
$ rm -rf *~
現在,目錄下應該只剩下 _book 目錄了,首先,忽略一些文件:
$ echo "*~" > .gitignore
$ echo "_book" >> .gitignore
$ git add .gitignore
$ git commit -m "Ignore some files"
然后,加入 _book 下的內容到分支中:
$ cp -r _book/* .
$ git add .
$ git commit -m "Publish book"
然后就可以訪問 用戶名+ github.io + 項目名稱,例如https://wylibra.github.io/gitbook