Gitbook
安装
安装gitbook
gitbook基于Node.js,所以要先安装Node.js,官网。
安装好node后,安装gitbook
//全局安装
npm install -g gitbook-cli
//当前目录下安装
npm install gitbook-cli
检查版本
安装好之后执行gitbook -V
检查版本,不出意外应该会报错:
CLI version: 2.3.2
Installing GitBook 3.2.3
/xxx/nodejs/lib/node_modules/gitbook-cli/node_modules/npm/node_modules/graceful-fs/polyfills.js:287
if (cb) cb.apply(this, arguments)
^
TypeError: cb.apply is not a function
at /data/soft/nodejs/lib/node_modules/gitbook-cli/node_modules/npm/node_modules/graceful-fs/polyfills.js:287:18
at FSReqCallback.oncomplete (fs.js:169:5)
此时需要进入上面给出的目录,找到polyfills.js,将62-64注释掉
//fs.stat = statFix(fs.stat)
//fs.fstat = statFix(fs.fstat)
//fs.lstat = statFix(fs.lstat)
此时运行gitbook -V
不会报错。
初始化
新建一个工程目录,在目录下执行gitbook init
,应该又报错了。这是因为node的版本太高了,需要对node进行降级。这里我推荐使用nvm来管理nodeJs的版本。因为我还有使用高版本node的需求,而且降级也挺麻烦的。nvm的下载地址,选择nvm-setup.zip,安装时第二个路径要选择nodejs的安装路径。
查看安装的nodejs版本
nvm list
安装低版本nodejs,这个版本经测试可用
nvm install v12.22.3
等待安装完,切换版本
nvm use v12.22.3
回到工程根目录再次初始化
gitbook init
初始化成功,创建了README.md
(书籍的介绍)和SUMMARY.md
(书籍的目录结构)
安装插件
这里拿自动目录插件举例,在工程根目录下创建一个book.json
,写入:
{
"plugins": ["summary"]
}
在根目录下执行gitbook install ./
即可安装插件。启动服务后这个插件会自动生成目录。下文会讲解如何生成目录。
加入文章
在根目录下创建文件夹,以数字和短横线开头:0-Example
,同样0-Example
下也可以创建子文件夹。每一个文件夹相当于一个目录,子文件夹就是多级目录。
每一个子文件夹下要有一个命名为0-README.md
的文件,用于放置这个目录的简介,其他md文件也要以数字和短横线开头:1-TestPage.md
启动本地服务
加入好文章之后,启动本地服务,前文安装的summary插件会自动生成层级目录
gitbook serve
然后在浏览器中打开http://localhost:4000/,检验你的成果!