基于 Node.js 的 GitBook 使用入门

新版GitBook安装及使用——不完全避坑指南 最近打算把一些笔记进行电子化整理和归档,于是尝试了 GitBook。 GitBook 是目前最流行的开源书籍写作方案,可以把Markdown 文件汇集成电子书,并提供 PDF、HTML 等多种格式输出。一般还需配合 Markdown 文本编辑器、Git 代码管理工具和 GitHub 托管仓库使用。我本人使用的 Markdown 文本编辑器 Typora 是一个轻量级的 md 编辑器,页面简洁,也容易上手,使用体验非常好。 所以创建开源电子书整体的预备配置包括了GitHub + Git + Typora + 阅读详情

简介

GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。

本文将介绍如何安装、编写、生成、发布一本在线图书。


支持格式

GitBook 支持输出多种文档格式,如:

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

GitBook项目地址:


基本安装

本章内容讲述 GitBook 的安装及命令行的功能快速预览说明。

Node.js 安装

Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台, 用来方便搭建快速的、易于扩展的网络应用。

Node.js 借助事件驱动, 非阻塞 I/O 模型变得轻量和高效, 非常适合 run across distributed devices 的 data-intensive 的实时应用。

安装完成这后,你可以在终端模式下检验一下:

$ node -v
v0.10.28

看到以上提示,就表示你已成功安装上 Node.js 了。


GitBook 安装

GitBook 是从 NMP 安装的,命令行:

$ npm install gitbook -g

安装完之后,你可以检验下是否安装成功:

$ gitbook -V
0.4.2

如果你看到了与上面类似的版本信息,则表示你已成功完装上了 GitBook。


GitBook 命名行速览

GitBook 是一个命令行工具,使用方法:

  • 本地预览
$ gitbook serve ./图书名称
  • 输出一个静态网站
$ gitbook build ./repository --output=./outputFolder
  • 查看帮助
$ gitbook -h
 
Usage: gitbook [options] [command]
 
Commands:
 
build [options] [source_dir] Build a gitbook from a directory
serve [options] [source_dir] Build then serve a gitbook from a directory
pdf [options] [source_dir] Build a gitbook as a PDF
ebook [options] [source_dir] Build a gitbook as a eBook
init [source_dir] Create files and folders based on contents of SUMMARY.md
 
Options:
 
-h, --help     output usage information
-V, --version  output the version number
 

图书项目结构

README.md 和 SUMMARY.md 是 GitBook 项目必备的两个文件,也就是一本最简单的 GitBook 也必须含有这两个文件,它们在一本 GitBook 中具有不同的用处。


目录初始化

当这个目录文件创建好之后,我们可以使用 GitBook 的命令行工具将这个目录结构生成相应的目录及文件:

$ gitbook init
$ ls
LICENSE    SUMMARY.md book       output
README.md      howtouse   publish
$ tree .
.
├── LICENSE
├── README.md
├── SUMMARY.md
├── book
│ ├── README.md
│ ├── file.md
│ └── prjinit.md
├── howtouse
│ ├── Nodejsinstall.md
│ ├── README.md
│ ├── gitbookcli.md
│ └── gitbookinstall.md
├── output
│ ├── README.md
│ ├── outfile.md
│ └── pdfandebook.md
└── publish
 ├── README.md
 └── gitpages.md

我们可以看到,GitBook 给我们生成了与 SUMMARY.md 所对应的目录及文件。

每个目录中都有一个 README.md 文件,相当于一章的说明。


图书输出

本章内容讲述如何将编写好的图书输出为我们所需要的格式。目前为止,GitBook 支持如下输出:

  • 静态 HTML,可以看作一个静态网站
  • PDF 格式
  • eBook 格式
  • 单个 HTML 文件
  • JSON 格式

我们这里着重说下如何输出静态的 HTML 和 PDF 文件。


输出为静态网站

你有两种方式输出一个静态网站:

1.本地预览时自动生成

当你在自己的电脑上编辑好图书之后,你可以使用 GitBook 的命令行进行本地预览:

$ gitbook serve ./图书目录
这里会启动一个端口为 4000 用于预览的服务器:
$ gitbook serve .
Press CTRL+C to quit ...
 
Starting build ...
Successfuly built !
 
Starting server ...
Serving book on http://localhost:4000

你可以你的浏览器中打开这个网址:http://localhost:4000:

这里你会发现,在你的图书项目的目录中多了一个名为 _book 的文件目录,而这个目录中的文件,即是生成的静态网站内容。

使用 build 参数生成到指定目录,与直接预览生成的静态网站文件不一样的是,使用这个命令,你可以将内容输入到你所想要的目录中去:

$ mkdir /tmp/gitbook
$ gitbook build --output=/tmp/gitbook
Starting build ...
Successfuly built !
$ ls /tmp/gitbook/
LICENSE           howtouse          manifest.appcache search_index.json
book              imgs              output
gitbook           index.html        publish

2.输出 PDF

输入为 PDF 文件,需要先使用 NPM 安装上 GitBook PDF :

$ npm install gitbook-pdf -g

笔者在安装这个模块,下载一个名为 phantomjs 的包时,出现请求未能响应的情况,你可以到这个应用的网站上去下载:phantomjs.org/。

这个包的安装方法,请看网站上的说明。然后,使用下面的命令,可生成 PDF 文件了:

$ gitbook pdf ./图书目录

如果你在图书目录内容,也可以这样做:

$ gitbook pdf .

然后,你会发现你的目录里多了一个名为 book.pdf 的文件!


发布

本章内容讲述如何使用 GitHub Pages 服务将我们的发布到网络上去。我们假设你已经会使用 Git 命令和 GitHub 的仓库管理。


发布到 GitHub Pages

将编写好的格式为 .md 的文件通过 GitBook 处理,然后再发布到 GitHub Gages 上去。

我个人比较喜欢将源码,即 .md 文件与 GitHub Pages 静态文件存放在一个仓库中。

.md 文件为 master 分支,而 HTML 文件为 gh-pages 分支。具体流程是这样的:


1.创建仓库与分支

  • 登录到 GitHub,创建一个新的仓库,名称我们就命令为 book ,这样我就就得到了一个 book 的空仓库。
  • 克隆仓库到本地: git clone git@github.com:USER_NAME/book.git 。
  • 创建一个新分支: git checkout -b gh-pages ,注意,分支名必须为 gh-pages 。
  • 将分支 push 到仓库: git push -u origin gh-pages 。
  • 切换到主分支: git checkout master 。

经过这一步处理,我们已经创建好 gh-pages 分支了,有了这个分支,GitHub 会自动为你分配一个访问网址:

http://USERNAME.github.io/book

你可以在项目页面右下 settings 中看到。当然,由于我们内容还没有上传所以你点开链接,也只是一个 404 页面。


2.同步静态网站代码到分支

下面我们就可以将 build 好的静态网站代码同步到 gh-pages 分支中去了:

  • 切换出 master 分支目录。我们需要将 gh-pages 分支内容存放到另一个目录中去。
  • 克隆 gh-pages 分支: git clone -b gh-pages git@github.com:USERNAME/book.git book-end 。这步我们只克隆了 gh-pages 分支,并存放在一个新的目录 book-end 里面。
  • Copy 静态多站代码到 book-end 目录中。
  • Push 到仓库。

然后,等十来分钟,你就可以访问到你的在线图书了。而后,每次修改之后,都可以将生成的代码 Copy 到 book-end 目录,再 Push 一下就好了。

当然,对于 gh-pages 存放问题,你也可以直接在 master 分支目录中直接 git clone gh-pages 分支,假如名称为 book-end ,然后修改一下 .gitignore 文件,将 book-end/ 添加进去,这样主分支就不会理会 book-end 内容的修改了。

笔者曾试过直接使用 gitbook build –output=/PATH/book-end 这个方式输出到 gh-pages 分支目录中,但发现 GitBook 在 build 的时候,相当于删除存在的这个目录,然后再新建目录,再写入内容,原来的 Git 信息会完全删除掉,显示这不是我们想要看到的,所以只能 Copy 才行。


结束

这些内容是在试用了一天的 GitBook 之后记录下来的,觉得这真是一个伟大的发明,以前使用过 Sphinx,可以使用在线工具直接生成一个静态网站。而后来我喜欢上了更简单的 MarkDown 语法,却发现对于阅读类似于书籍的 MarkDown 时,得自己一个个的文件点开才能进行阅读。

而 GitBook 则是将这些独立的文件组合起来,做成一个静态站或是生成 PDF,且是真正精美的,一下便喜欢上了。

本文作者:祝宇新


文章看完啦,不如来官网看看?滴滴云3-5折活动聚惠来袭!

与其看教程,不如实际操作下?

滴滴云-为开发者而生

基于 MFC 和 C++ 的语音识别客户端实现方案 语音 SDK:[Microsoft Speech SDK](https://learn.microsoft.com/zh-cn/azure/cognitive-services/speech-service/speech-sdk)(建议使用最新版)1. **Azure 语音服务密钥**:需要在 [Azure 门户](https://portal.azure.com/) 中创建语音资源,获取密钥和区域(如 `eastasia`),替换代码中的占位符。 阅读详情

相关推荐

【科研】Michaelis–Menten 曲线(米氏曲线)中反应速率的计算

Michaelis–Menten 曲线 米氏曲线 纵坐标 反应速率求值 朗伯比尔定律

weixin_42809675的博客 2万+

编译器背后的故事

学习任务: 1.用gcc生成静态库和动态库. 2.静态库.a与.so库文件的生成与使用 3.请在ubuntu中下载安装nasm,对示例代码“hello.asm”编译生成可执行程序 4. 5. 文章目录一.静态库和动态库的运行及使用二级目录三级目录 一.静态库和动态库的运行及使用 1.编写程序 用nano编写两个功能函数和一个主函数 main1.c #include<stdio.h> int main() { int a=3 , b=2; printf("%d\n ", x2x(a,b))

qq_44249640的博客 300

Android13 CarPowerManagementService onApPowerStateChange流程分析

如下为CarPower上电的流程图:下面我们从代码角度分析:在CPMS的init方法中会调用onApPowerStateChange(CpmsState.WAIT_FOR_VHAL, CarPowerManager.STATE_WAIT_FOR_VHAL); 设置ApPowerState为STATE_WAIT_FOR_VHAL: 在onApPowerStateChange中调用PowerHandler 的handlePowerStateChange方法: 在handlePowerStateChang

liuning1985622的博客 925

typora + nodejs + gitbook安装

1.typora安装 typora 下载地址:https://typora.io/ 2.node安装gitbook 2.1 安装步骤 gitbook是基于 nodejs,所以我们首先需要安装 nodejs, 下载地址:https://nodejs.org/en/download/ 默认安装即可,安装成功后需配置环境变量。 gitbook命令行安装如下: gitbook init成功执行后会生成README.md 和 SUMMARY.md README.md —— 书籍的介绍 SUMMARY.md —— 书

qq_34183232的博客 615

Keil AC6编译器独立安装与配置指南:不升级Keil MDK也能用上新工具链

本文详细介绍了如何在不升级Keil MDK的情况下独立安装和配置Arm Compiler 6(AC6),帮助嵌入式开发者充分利用AC6的编译速度、代码密度和现代语言支持优势。通过零侵入式解决方案,开发者可以在现有环境中灵活切换编译器版本,提升开发效率。

weixin_30872157的博客 552

Python+OpenCV实现游戏自动刷怪脚本(附完整代码)

本文详细介绍了如何使用Python和OpenCV开发游戏自动刷怪脚本,涵盖环境搭建、图像识别、行为决策引擎及反检测优化等关键技术。通过完整的代码示例,帮助开发者实现从简单脚本到智能自动化系统的升级,提升游戏效率。

weixin_29032489的博客 517

Nodejs 16与 gitbook搭建属于你自己的书本网站-第一篇

TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Promise

好看的皮囊千篇一律,有趣的灵魂万里挑一。 951

手把手教你:基于STM32H7自制飞控,如何从零开始移植PX4固件(附避坑指南)

本文详细介绍了如何基于STM32H7自制飞控板并移植PX4固件的完整流程,包括硬件设计、开发环境搭建、关键配置文件移植、驱动开发与适配等关键步骤。特别针对PX4-AutoPilot的移植过程提供了实用技巧和避坑指南,帮助开发者高效完成飞控系统开发。

weixin_30271335的博客 143

【小沐学前端】GitBook制作在线电子书、技术文档(gitbook + Markdown + node)

什么是 GitBook?GitBook 是一个现代文档平台,团队可以在其中记录从产品到内部知识库和 API 的所有内容。通过创建一个简单而强大的平台供团队分享知识,从而帮助团队更高效地工作。制作一个用户友好的协作产品,让每个人都可以通过文档创建、编辑和共享知识。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)!!

爱看书的小沐 2587

Openclaw Onboarding向导全攻略——如何配置你的第一个AI助手

很多新手在成功运行 `openclaw --version` 后,面对黑底白字的终端就陷入了迷茫:“安装好了,然后呢?” 本篇我们就彻底解决这个问题,带你完整走完 `openclaw onboard` 交互式初始化配置向导的每一步,从“安装完成”到“真正能用”,只差这一个向导的距离。 本文为2026年3月最新版,适配OpenClaw v2026.2.x 稳定版,所有步骤均经过实测验证,可直接落地。

夏日清风 1917

别再翻手册了!用Materials Studio的Forcite模块,5步搞定复杂溶剂的溶解度参数计算

本文详细介绍了如何使用Materials Studio的Forcite模块,通过5个步骤快速计算复杂溶剂的溶解度参数。从分子建模、结构优化到分子动力学采样,再到最终的内聚能密度计算,该方法大幅提升了石油化工和高分子材料研发中的效率,避免了传统手册查阅和实验的繁琐过程。

weixin_28707739的博客 280

Gitbook使用教程

GitBook 是一个基于 Node.js 的命令行工具,支持 Markdown 和 AsciiDoc 两种语法格式,可以输出 HTML、PDF、eBook 等格式的电子书。

weixin_51667920的博客 2792

Objective-C实现人工势场法(附完整源码)

Objective-C实现人工势场法(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 426

github pages 如何使用_基于 Node.js 的 GitBook 使用入门

简介GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。本文将介绍如何安装、编写、生成、发布一本在线图书。支持格式GitBook 支持输出多种文档格式,如:静态站点:GitBook 默认输出该种格式,生成的静态站点可直接托管搭载 GitHub Pages 服务上。PDF:需要安装 gitbook-pdf 依赖。eBook...

weixin_39592315的博客 467

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

【Windows下Gitbook快速入门使用】

GitBook配置入门与使用

li_kin的博客 542

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

GitBook快速入门

1.安装 Node.js #Node 官网已经把 linux 下载版本更改为已编译好的版本了,我们可以直接下载解压后使用: wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz tar xf node-v10.15.3-linux-x64.tar.xz cd node-v10.15.3-linux-x64...

随便起个不重复的名字 818

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

如何使用gitbook写文档

gitbook写文档 gitbook本地环境搭建 安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash 安装node, 推荐使用v10.24.1 nvm install 10.24.1 安装gitbook-cli sudo npm install -g gitbook-cli 输入gitbook --version 即可安装完成。 ...

birdflyinhigh的博客 264

Node.js安装,更改为淘宝镜像源 ;gitbook 安装,创建,启动

Node.js 2019年11月6日 17:31 ###安装: 下载: https://nodejs.org/en/ 更改淘宝镜像,安装cnpm命令 npm install -g cnpm --registry=https://registry.npm.taobao.org npm包库 https://npm.taobao.org/package/mysql 文档: https://nodejs....

做个懂管理、懂产品,懂技术的大叔 797

gitbook安装教程

文章目录安装gitbook-cli查看版本 安装gitbook-cli cmd执行:使用npm全局安装gitbook-cli npm install gitbook-cli -g 回车如下: 查看版本 gitbook --version 回车:

全栈川川 4334

gitbook初接触

点此下载—>node.js下载安装成功后可用命令行执行安装gitbook node.js安装成功后可以在控制台输入npm校验有没有安装成功 npm是嵌入在node.js中的,这就是为什么我们安装gitbook要安装node.js的原因。 gitbook安装后 还是命令行,进入你想要创建gitbook的目录下,git init 初始化,就会自动生成SUMMARY.md和README.md 可以...

qq_37059004的博客 237

GitBook安装及使用——使用 Markdown 创建你自己的博客网站和电子书

GitBook是一个命令行工具,用于使用 Markdown 构建漂亮的博客网站、电子书籍,相比于VuePressdocusaurus等工具,它更简洁,用起来也更方便。JavaFX 前言这个博客网站就是使用 GitBook 生成的,你只需要使用 Markdown 来书写文章内容,其他的 GitBook 帮你搞定。另外关于 GitBook 的其他信息可参考 github 地址 :gitbook。

西凉的悲伤博客 1万+

gitbook的使用

经过这一步处理,我们已经创建好gh-pages分支了,有了这个分支,Github会自动为你分配一个访问网址:https://shliang0603.github.io/gitbook_test/ (在仓库主页的setting中可以看到这个链接)。可以看到,每个一级目录下都生成了一个文件夹,二级目录则生成一个markdown类型的文件,而且每个目录中,都有一个README.md文件,用于描述这一章的说明。然后,你就会发现,你的目录中多了一个名为book.pdf的文件。

2401_88244350的博客 1605

GitBook 从懵逼到入门

  本文从 “是什么”、“为什么”、“怎么办”、“好不好” 四个维度来介绍 GitBook,带你从黑暗之中走出来,get 这种美妙的写作方式。 是什么?   在我认识 GitBook 之前,我已经在使用 Git 了,毋容置疑,Git 是目前世界上最先进的分布式版本控制系统。   我认为 Git 不仅是程序员管理代码的工具,它的分布式协作方式同样适用于很多场合,其中一个就是写作(这会是一个...

程序员「阿基米东」的编程之旅 17万+

GitBook 使用入门教程

GitBook 使用入门教程 项目介绍 GitBook 是一个基于 Node.js 的命令行工具,可使用 GitHub/Git 和 Markdown 来制作精美的电子书。它支持输出多种文档格式,如静态站点、PDF、eBook、单HTML网页和JSON等。GitBook 项目官网地址为 http://gitbook.io,GitHub 地址为 https://github.com/GitbookIO...

gitblog_00208的博客 1106

GitBook 使用教程

GitBook,顾名思义它是一个与书有关的工具。通过 GitBook,你可以只用一些 .md 文件就生成一个电子书网页,或是一本真正的 .epub .mobi 等等格式的电子书。废话不多说,直接开始教程~

Copcin的小站 7791

windows 安装gitbook并使用gitbook editor可视化工具

GitBook是一个基于 Node.js 的命令行工具,可使用Github/Git 和Markdown来制作精美的电子书。 一、官网下载nodejs直接安装 传送门,安装完成后如下: 可以看到npm也安装了,此时可以在cmd控制台进行验证(win+r),输入cmd进入控制台: C:\pc>node -v v8.11.1 C:\pc>npm -v 5.6...

bocai_xiaodaidai的博客 6416
上一篇: 如何使用 GZIP 来优化你的网站
下一篇: 滴滴开源小程序框架 Mpx
「已注销」
博客等级 码龄6年 395粉丝 158原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值