Gitbook 的安装和使用

GitBook 简介

GitBook是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书,GitBook 并非关于 Git 的教程。
GitBook支持输出多种文档格式:

  • 静态站点:GitBook默认输出该种格式,生成的静态站点可直接托管搭载Github Pages服务上;
  • PDF:需要安装gitbook-pdf依赖;
  • eBook:需要安装ebook-convert;
  • 单HTML网页:支持将内容输出为单页的HTML,不过一般用在将电子书格式转换为PDF或eBook的中间过程;
  • JSON:一般用于电子书的调试或元数据提取。
    使用GitBook制作电子书,必备两个文件:README.md和SUMMARY.md 。
  • GitBook 官网
  • GitBook 文档

GitBook 准备工作

GitBook 是一个基于 Node.js 的命令行工具,下载安装 Node.js,安装完成之后,你可以使用下面的命令来检验是否安装成功。

$ node -v
v10.15.3

安装 GitBook

输入下面的命令来安装 GitBook

$ npm install gitbook-cli -g

安装完成之后,你可以使用下面的命令来检验是否安装成功。(这里的V是大写的哦!)

$ gitbook -V
CLI version: 2.3.2
GitBook version: 3.2.3

创建一本书

初始化
GitBook可以设置一个样板书:

$ gitbook init

如果您希望将书籍创建到一个新目录中,可以通过运行 gitbook init ./directory

构建

如果你下载了一本gitbook,你需要切换到书所在的目录使用下面的命令,会在项目的目录下生成一个 _book 目录,里面的内容为静态站点的资源文件。

$ gitbook build

image.png

启动服务
使用下列命令会运行一个 web 服务, 通过 http://localhost:4000/ 可以预览书籍

$ gitbook serve

GitBook 命令

这里主要介绍一下 GitBook 的命令行工具 gitbook-cli 的一些命令, 首先说明两点:

  • gitbook-cli 和 gitbook 是两个软件
  • gitbook-cli 会将下载的 gitbook 的不同版本放到 ~/.gitbook中, 可以通过设置GITBOOK_DIR环境变量来指定另外的文件夹
列出 gitbook 所有的命令
$ gitbook help
输出 gitbook-cli 的帮助信息
$ gitbook --help
生成静态网页
$ gitbook build
生成静态网页并运行服务器
$ gitbook serve
生成时指定gitbook的版本, 本地没有会先下载
$ gitbook build --gitbook=2.0.1
列出本地所有的gitbook版本
$ gitbook ls
列出远程可用的gitbook版本
$ gitbook ls-remote
安装对应的gitbook版本
$ gitbook fetch 标签/版本号
更新到gitbook的最新版本
$ gitbook update
卸载对应的gitbook版本
$ gitbook uninstall 2.3.2
指定log的级别
$ gitbook build --log=debug
输出错误信息
$ gitbook builid --debug

GitBook 项目结构

GitBook使用简单的目录结构。在 SUMMARY (即 SUMMARY.md 文件)中列出的所有 Markdown / Asciidoc 文件将被转换为 HTML。多语言书籍结构略有不同。

GitBook 电子书结构如下所示:

.
├── book.json
├── README.md
├── SUMMARY.md
├── chapter-1/
|   ├── README.md
|   └── something.md
└── chapter-2/
    ├── README.md
    └── something.md

文件介绍:

文件 描述
book.json 配置数据 (optional)
README.md 电子书的前言或简介 (required)
SUMMARY.md 电子书目录 (optional)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容