GitBookとは
GitBookは、Githubのレポジトリで本を書くためのシステムです。たぶん(あんまり理解してない)。分からな過ぎて今回たぶん、「たぶん」って言いまくりますけどごめんなさい。。
本を、とはいいつつ、簡単なウェブサイトをつくるときにも有用です。たとえば、@renkun-ken(a.k.a.蓮君)のrlist Tutorialはこれを使っています。
GitBookを使うには
たぶん方法は2つあります。
1) GitBook.comでやる
GitBook.comを使うと、オンラインエディタがあるので、それですべての作業が完結できます。たぶん。
デスクトップで使えるエディタも快適そうでした。
ただ、アカウント作らないといけないのがちょっとだけめんどくさそうでした。
2) ローカルでビルドしてGithub Pagesを使う
GitBook.comを介さなくてもGitBookは使えます。コマンドラインツールをインストールすれば大丈夫です。たぶん。
GitBookコマンドラインツールのインストール
node.jsのインストール
公式サイトからインストールします。
npmでgitbook-cliをインストール
npm install gitbook-cli -g
GitBookの使い方
レポジトリをinitする
GitBook initすると、必要なファイルをつくってくれます。↓は空っぽのディレクトリでやる例ですが、すでにMarkdownファイルがいくつかあってもうまくいくはずです。
mkdir foo/ && cd foo/ gitbook init
ファイルが2つできているはずです。
foo/ |__ README.md |__ SUMMARY.md
README.mdはトップページになります。
SUMMARY.mdは、目次です。
これをコミットします。
git add --all . git commit -m 'initial commit' git remote add origin https://github.com/user/foo git push origin -u master
適当なファイルをつくる
chap01.mdみたいなファイルを適当に書きます。
で、SUMMARY.mdの目次のもこれを書き加えておきます。
# 目次 * [第一章](chap01.md)
これをコミットします。
git add --all . git commit -m 'add chaptor 1'
GitBookをビルド
gitbook build
とやると、本がビルドされます。以下のように_book/というディレクトリができるはずです。
foo/ |__ _book/ |__ gitbook/ |__ index.html |__ chap01.html |__ search_index.json |__ chap01.md |__ README.md |__ SUMMARY.md
ただ、_bookはmasterブランチにはコミットしたくないので.gitignoreに入れときます。
このやり方は、Rで本を書く📚 - Qiitaを参考にしました。
echo '_book/' >> .gitignore git add .gitignore git commit -m 'add .gitignore' git push origin
_bookをgh-pagesにコミット
_bookには、gh-pagesブランチをつくります。とりあえずコミットします。
cd _book/ git init git add --all . git commit -m 'create gh-pages'
これを、ブランチ名をgh-pagesに変えてpushします。
git branch -m gh-pages git remote add origin https://github.com/user/foo git push origin -u gh-pages
Github Pagesをみてみる
これでGithub Pagesができているはずです。
たとえばこんな感じです:
感想
ローカルでビルドするのはちょっとめんどくさいかも。でもJekyllとか使うよりはお手軽でいいと思います。
そういえば、たぶんってあんまり使ってなかった。