命令
这里介绍下gitbook的几个常用命令。
初始化init
gitbook init命令可初始化书籍目录。
在使用这个命令时,首先需要新建立一个目录,然后在这个目录下新增加README.md与SUMMARY.md;如新建目录为book,则该目录结构为:
1  | c:\>tree book /f  | 
其中README.md是对本书籍的介绍,这个是必须文件。
SUMMARY.md是本书籍的目录结构。比如内容为:
1  | # Summary  | 
以上为示例。大家可根据自己实际需要来编写目录;
编号目录后再系统终端的命令提示符下,输入命令:
1  | c:\>book\gitbook init  | 
命令完成后,你会发现按你所编写的目录结构生成了初始的文件,只需要按每个文件编写内容即可了。
预览serve
如你编写好了内容要预览的话,可使用如下命令:
1  | c:\>book\gitbook serve  | 
该命令成功以后,则可以在本地浏览器通过http://localhost:4000 来查看gitbook运行的效果了。
生成build
如编写好书籍后,可通过build命令来生成静态网页:
1  | c:\book\gitbook build  | 
通过build命令后,会发现在book目录下会有一个新的目录_book,所有静态网页的内容都在这个目录下,可将这个目录的所有内容放在服务器上运行。其实在运行serve命令时就会首先运行build命令来生成静态网页,然后serve自行打开一个web服务器并通过监控4000端口来发布静态网页。
其它命令
注意的是gitbook-cli和gitbook是2个不同软件,gitbook-cli会将gitbook不同版本下载到C:\使用者\用户登录名\.gitbook中,但可通过设置GITBOOK_DIR环境变量来指定不同的文件夹。
gitbook-cli的帮助信息
1  | c:\>gitbook --help  | 
列出gitbook所有能用的命令
1  | c:\>gitbook help  | 
指定版本
GItbook CLI会使用缺省的最新Gitbook版本,但你也可以通过参数–gitbook来指定版本,如:
1  | c:\>gitbook build ./book --gitbook=2.0.1  | 
可列出指定版本可用的命令:
1  | c:\>gitbook help --gitbook=2.0.1  | 
版本管理
列出所有版本
1  | c:\>gitbook ls  | 
列出NPM上可用的版本
1  | c:\>gitbook ls-remote  | 
安装指定版本
1  | c:\>gitbook fetch 2.1.0  | 
更新到最新版本
1  | c:\>gitbook update  | 
卸载指定版本
1  | c:\>gitbook uninstall 2.0.1  | 
使用本地文件夹做GitBook的版本(用于开发)
1  | c:\>gitbook alias ./mygitbook latest  | 
调试
可使用参数选项–log=debug 和–debug来得到各详细错误信息,以便能进行排错;如:
1  | c:\>gitbook build ./ --log=debug --debug  | 
配置
其实Gitbook是零配置的。如果不想做出其他效果,那么就可以不进行任何配置。
如要进行配置的话,那么需要自己建立一个book.json文件在书籍目录下。
先了解下book.json的基本配置吧。
基本配置
| 变量 | 描述 | 
|---|---|
| root | 包含书籍所有文件的根文件夹 | 
| structure | 指定README,SUMMARY,GLOSSARY等的路径 | 
| title | 书籍的标题,缺省值从README获取 | 
| decription | 书籍的描述,缺省值从README获取 | 
| author | 书籍的作者 | 
| isbn | 书籍的ISBN | 
| language | 书籍的语言,缺省为en | 
| direction | 文字的排版方向。可以为rtl或ltr,缺省值因爱language的设定 | 
| gitbook | Gitbook将使用的版本,可指定版本或接受如“>=3.0.0”的条件 | 
插件Plugins
插件以及其配置都是指定在book.json中。从3.0.0版本以后,Gitbook可使用主题。
| 变量 | 描述 | 
|---|---|
| plugins | 要加载的插件列表 | 
| pluginsConfig | 插件的配置 | 
Structure
除了root变量外,可为gitbook指定README,SUMMARY,GLOSSARY,LANGUAGES等文件的名称,比如README使用缺省名称为README.md。这些文件将放在书籍的根目录(或者放在不同语言的根目录下)。形如dir/MY_README.md的路径是不接受的。
| 变量 | 描述 | 
|---|---|
| structure.readme | Readme文件的名称,缺省README.md | 
| structure.summary | Summary文件的名称,缺省SUMMARY.md | 
| structure.glossary | Glossary文件的名称,缺省GLOSSARY.md | 
| structure.languages | Languages文件的名称,缺省为LANGS.md | 
PDF选项
PDF的输出可在book.json中配置,支持的参数如下:
| 变量 | 描述 | 
|---|---|
| pdf.pageNumbers | 在每页的底部增加页码数,缺省为true | 
| pdf.fontSize | 设置字体大小,缺省为12 | 
| pdf.fontFamily | 设置字体,缺省为Arial | 
| pdf.paperSize | 设置纸张大小,可选为’a0’, ‘a1’, ‘a2’, ‘a3’, ‘a4’, ‘a5’, ‘a6’, ‘b0’, ‘b1’, ‘b2’, ‘b3’, ‘b4’, ‘b5’, ‘b6’, ‘legal’, ‘letter’,缺省为a4 | 
| pdf.margin.top | 页眉,缺省为56 | 
| pdf.margin.bottom | 页尾,缺省为56 | 
| pdf.margin.right | 右边距,缺省为62 | 
| pdf.margin.left | 左边距,缺省为62 | 

