codecamp

我的GitBook笔记

12 September 2015
号外号外:专注于移动端的fullPage.js来啦!!!快点我查看

最近准备写一本书,所以研究研究GitBook,本文对学习做个记录,主要目就是以后日常使用,就不用去翻看别的资料了。

什么是GitBook

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

GitBook需要使用markdown格式编写,如果你不了解可以看看这里

安装

需要先安装Node,安装步骤网上教程非常多,在此不详细介绍,安装好node后就可以使用npm安装GitBook了。

gitbook-cli

需要先安装gitbook-cli,这个工具是用来管理gitbook工具的,这有点类似容器的意思,通过gitbook-cli可以在本地安装多个gitbook工具的不同版本。

使用如下命令安装GitBook。

 $ npm install gitbook-cli -g

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

$ gitbook -V

安装gitbook

安装完gitbook-cli后,要使用gitbook还需要安装gitbook工具,可以通过如下命令安装。

$ gitbook versions:install

安装好后可以通过如下命令查看是否安装成功。

$ gitbook versions

都安装好后接下来我们就可以做点有意思的事情了。

常用命令

再开始做有意思的事情之前,先来熟悉下常用命令。

gitbook-cli常用命令

gitbook -h # 查看帮助信息

gitbook versions # 查看本地安装的gitbook版本

gitbook versions:install # 安装最新版gitbook
gitbook versions:install 2.3.3 # 安装指定版本

gitbook versions:uninstall # 卸载当前选中版本
gitbook versions:uninstall 2.3.3 # 卸载指定版本

gitbook versions:link # 指定当前文件夹使用当前选中版本
gitbook versions:link 2.3.3 # 指定当前文件夹使用指定版本
gitbook versions:link path # 指定path使用指定版本

gitbook -v 2.3.3 # 指定当前使用哪个版本的gitbook
gitbook --gitbook 2.3.3 # 同上

gitbook常用命令

$ gitbook init # 初始化一个仓库

$ gitbook install # 安装插件

$ gitbook serve [book] # 本地预览
$ gitbook serve --port 8001 # 指定端口

$ gitbook build repository PATH # 输出一个静态网站

$ gitbook pdf book pdf # 生成pdf文件

$ gitbook help # 查看帮助

顺便吐槽一下gitbook命令设计是有问题,两个不同的命令耦合在了一起。

图书项目结构

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

README.md

这个文件相当于一本Gitbook的简介。

SUMMARY.md

这个文件是一本书的目录结构,使用Markdown语法,一个简单的例子如下所示。

# Summary

* [Part I](part1/README.md)
    * [Writing is nice](part1/writing.md)
    * [GitBook is nice](part1/gitbook.md)
* [Part II](part2/README.md)
    * [We love feedback](part2/feedback_please.md)
    * [Better tools for authors](part2/better_tools.md)

更多信息请看这里

book.json

自从GitBook 2.0.0开始支持自定义简介文件,在book.json中定义,这样README.md就可以用作项目的简介。

{
    "structure": {
        "readme": "myIntro.md"
    }
}

更多信息请看这里

book.json还有自定义更多的信息,比如网页的title,description等,全部可配置信息请查看这里

发布

使用gitbook可以很方便的发布到很多平台下面举几个常用的例子。

发布到GitHub

源代码保存到master分支,build出来的上传到gh-pages分支,就这么简单的搞定了。如果你还不会使用git和github,那么不妨读读我的另一篇文章《我的git笔记》。

发布PDF

这里已windows平台为例子,需要先安装calibre@2.38.0(其实只是需要ebook-convert这个工具),安装好后将其安装目录配置到PATH。

然后就可以使用下面的命令生成pdf了。

$ gitbook pdf . ../temp.pdf # 将当前目录,生成到父目录下的temp.pdf

发布到GitBook

还没想好,想好了再写。

总结

关于GitBook的更多资料可查看官网的帮助文档,哪里的介绍比较全面,也会保持时时更新。

参考资料

我的svn笔记
我的Browsersync笔记
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }