简单实用 | 用Gitbook做笔记 / 写书过程全记录

用Gitbook写随笔

    • 1. 准备
    • 2. 开始写书
      • 2.1 创建书籍
      • 2.2 撰写书籍
        • 2.2.1 生成目录
        • 2.2.2 写你所想
      • 2.3 构建书籍
      • 2.4 预览书籍
      • 2.5 生成书籍
    • 3 发布书籍
    • 4 配置和插件

在寻找合适的电子笔记方式过程中,看到了用 gitbook 做笔记,有很多优点,不过也比较麻烦,最终还是选择了用 OneNote 做笔记,不过 gitbook 可以用 markdown 排版,真的非常美观,所以可以用来写一些日记、随笔之类的,还可以做成电子书,感觉很不错。不过感觉网上的教程很多,但是看起来有点晕,有点乱,只有自己实际操作一遍才会比较清楚,这里我仅仅是把我自己的使用的过程,以及一些理解记录下来。(很多东西只是个人的理解,如果有说的不对的地方请大家批评指正)

在使用之前,我们先理解一下什么是git book。首先 Gitbook、Github、Git 这三个东西是不一样的。

  • git :是一种开源的分布式版本控制系统;
  • GitHub :是基于 git 的一个版本控制网站,提供了 web 操作界面,并且提供了存储远程仓库的服务器,在云端为你备份你提交的仓库。其实除了 GitHub 还有很多基于 git 的版本控制网站,比如 gitlab、gitee 等。
  • git book:那么 gitboook 是什么呢?gitbook 跟 git 和 GitHub实际上没有任何关系!最初定位是面向软件说明文档的编写者的,但它同样适合任何类型的文字编辑工作者。不过 git book 可以同时结合强大的 git 和简单美观的 markdown,真的很适合程序员呢。
  • git book与GitHub联姻:虽然 git book与GitHub 实际上没有任何关系,但是你完全可以把自己的一本书看作 git 里的一个仓库,和其他代码仓库没有任何区别,那么就可以把他托管放置在 GitHub 上。

那么下面让我们开始使用 git book。

1. 准备

git book 就像 git 一样,要想使用,你要先在电脑上安装相关的软件才能支持git book 的命令以及相关软件的运行环境。那么需要安装什么呢?

  • nodejs
  • gitbook

要想安装 git book,就必须要先安装 nodejs,具体为什么我也不管啦,照着做就好了。nodejs在官网下载安装包进行安装,git book 安装执行下面的指令就可以啦(只有安装了 nodejs 才能使用 npm 命令)

$ npm install gitbook-cli -g

那么网上还有很多说 git book Editor 是怎么一回事呢?这个只不过是一个编辑器罢了,就相当于是为普通 git book 用户提供了一个 ui 界面,你就可以直接打开软件像写 word 那样写 git book了。因为只安装git book的话一般是用 markdown 编辑器写 *.md 文件,然后通过命令行编译生成电子书的,有了这个客户端你就只需要点一些按钮他就自动帮你做了,就这么简单。所以 git book Editor 并不是必须的,甚至我觉得这个 editor 不很好用,因为他为了用 ui 界面代替 markdwon 的命令,一方面不像纯 markdown 那样自由,另一方面又不如 word 那么强大,用起来总感觉很别扭。

2. 开始写书

有一个很好的git book教程 http://www.chengweiyang.cn/gitbook/installation/README.html

用 git book 写书基本上可以总结为以下几个步骤

  1. 创建书籍:实际上就是为你这本书初始化一个文件夹,文件夹里就存放了你这本书的所有信息和内容
  2. 撰写书籍:balabala 尽情挥洒你的笔墨和文采吧
  3. 构建书籍:把你写好的*.md 书籍转化成网页 *.html 的形式,以便于将来发布到网站上,所以当你的书籍内容更新时,对应的网页也需要重新生成
  4. 预览书籍:如果觉得不满意,就回到第 2 步
  5. 发布书籍:生成本地电子书或者发布到网上

2.1 创建书籍

就是初始化一个文件夹啦,选择一个文件夹执行下面的命令

gitbook init [./directory]  # 不指定 directory 就在当前文件夹下初始化

这部操作结束之后是这样滴
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第1张图片
文件夹变成了这个样子
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第2张图片
这两个文件夹有什么用呢?

  • README.md:对书籍的简单介绍
  • SUMMARY.md:里边是书籍的目录结构

刚建立的时候里面当然是空的啦,README.md 是这样的

# Introduction

SUMMARY.md 是这样的

# Summary

* [Introduction](README.md)

2.2 撰写书籍

2.2.1 生成目录

当你想好要怎么安排章节的时候,就可以修改 SUMMARY.md 中的内容,然后再次使用 gitbook init 命令,这个时候他就会根据你的 SUMMARY.md 中的内容,生成对应的文件结构,如果文件或者目录不存在,就会自动创建。举个栗子,你想写的书的章节是这样的
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第3张图片
那么你的 SUMMARY.md 文件就这么写
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第4张图片
执行完 gitbook init 之后,文件夹就会变成这个亚子
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第5张图片
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第6张图片
那么你可能回想,如果我手动创建一个文件夹或者文件呢?

2.2.2 写你所想

在你生成的 *.md 文件里,你就可以尽情发挥聪明才智了。

2.3 构建书籍

前面只是生成了一个文件夹,文件夹下的文件目录结构实际上就对应了书籍章节结构

当然实际上你也可以强行不让他们对应,只需要让 SUMMARY.md 中的章节结构与对应的文件路径结构不对应就可以了。因为 SUMMARY.md 文件中(看上面的栗子)方括号缩进关系代表了章节结构,方括号中的内容就是这一章的题目,而后面圆括号的内容表示对应的 *.md 文件,也就是说这一章节的内容就是 *.md 文件中的内容。
不过应该没人给自己这么添堵吧。

在这之后你在 *.md 文件里填充了自己想写的内容,这个时候所有的章节文件实际上还是分散的,如果你想查看,还需要繁琐的翻到某一个文件夹下,打开对应的文件。那么距离最终生成电子书籍还差什么呢?编译!你只需要执行下面的指令,软件就可以帮你根据 *.md 文件生成对应的 *.html 文件,不同章节之间可以通过超链接快速打开,这也是为了方便最后发布到网站上。

gitbook build [书籍路径] [输出路径]

然后就是这样子的,会生成一个 _book 文件夹,这个文件夹下存放的就是静态网站内容了
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第7张图片
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第8张图片
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第9张图片
打开 index.html 是什么样子的呢?当当当当 ? ~ 是不是简洁美观 ~ 不过这个时候你会发现点击其他章节是不会跳转的,不要着急,看下一步
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第10张图片

2.4 预览书籍

写好书后,你也可以直接用下面的命令预览,实际上这个命令包含了上面的 gitbook build

gitbook serve [--port xxxx] # 默认 4000 端口

简单实用 | 用Gitbook做笔记 / 写书过程全记录_第11张图片
然后再打开浏览器,输入 localhost:4000 就可以看到?,非常好看有木有!这个时候就可以随意点链接啦。如果这个时候感觉有哪些地方需要修改,只需要回到前面重新生成目录,重新填充内容,然后再构建、预览就可以啦。
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第12张图片

2.5 生成书籍

从 2.4 看出来只有执行 gitbook serve 才能像看电子书那样随意跳转章节,这样太麻烦了,想一劳永逸怎么办?可以生成各种格式的电子书,然后你就有一本自己写的电子书啦

gitbook pdf ./ ./bookname.pdf
gitbook epub ./ ./bookname.epub
gitbook mobi ./ ./bookname.mobi

如果不成功,可能还需要安装一些其他工具,比如 ebook-convert。
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第13张图片
简单实用 | 用Gitbook做笔记 / 写书过程全记录_第14张图片

3 发布书籍

上面的操作都是在本地进行的,你的书籍也只有你自己能看到,要想让更多的人看到,你可以像之前说的那样, push 到 GitHub 的远程仓库上,不过这样的话只是被当作一个仓库来看,网页上访问的时候还是没有电子书的效果。

gitbook.com 则提供了这样一种服务,他是一个书籍托管网站,就好像 GitHub 是一个代码托管网站一样,GitHub 可以帮你保存你的代码库,而 gitbook.com 可以帮你保存你的电子书。他为你的每一本书籍都创建了一个 git 项目,以此帮你进行书籍版本控制管理。除此之外,为了方便用户,你还可以将用 GitHub 的项目替代 gitbook 上的项目。也就是说你可以将 gitbook 上的某本电子书与 GitHub 仓库关联,这样 GitHub 更新时,你通过gitbook 访问也能看到更新后的内容。

下面内容来自 http://www.chengweiyang.cn/gitbook/gitbook.com/README.html

GitBook.com 是一个围绕 gitbook 发行书籍的社区,于 2014 年初创,GitBook.com 提供免费和付费的服务,而且免费账户就可以享受诸多服务,包括:

  • 1 本私有书籍
  • 托管不限数量的公开书籍
  • 售卖不限数量的书籍,并分享 80% 的书籍收入
  • 不限数量的协作者
  • 免费的在线书籍编辑器


对于普通用户来说,免费账号就已经够用,因为虽然限制为 1 本私有书籍,但是并没有限制书籍的大小,所以对于个人的学习笔记来说非常合适,用户甚至可以将所有知识归类放入一本私有书籍中!当然,GitBook.com 限制私有书籍数量但不限公开书籍数量的政策,显然是鼓励用户能够共享知识!

4 配置和插件

还可以通过各种配置文件对自己的书籍风格进行配置,这个往上讲的也很多,个人感觉太麻烦,默认风格已经挺好了,也没怎么管这个。

你可能感兴趣的:(Git)