【工具链】 换个方式写技术文档: gitbook+markdown

get到用gitbook+markdown写技术文档在git共享后,以前惯用的word突然不香了!

轻量、简单、只专注在写的内容,还可以生成html文档。

这么好的方法怎么能不分享呢?

跟我来,一起尝试一下吧!

有word,为什么要用gitbook?

简洁,只满足最原始的需求

对我这种懒得排版,又想随时随地想记录和写作的宝宝来说,简洁就是美!

记录操作步骤,写帮助文档,写技术文档时,大多技术人员都是专注与写的内容。

能写文字、能分级,能插入截图,就够了。

轻量、简单,发布方便,有了内容后,几个命令就能创建一个网站或一本书。

写完后还可以生成pdf、mobi、html等格式,分发给团队其他人。

还能build生成的静态网站,随意放在一个web容器中就发布啦。

想要一个简洁、纯粹、方便在web端共享,这绝对是一个很好的工具!

协同,支持多人同时开发文档

Gitbook写作采用分布式、多人协同的书写方式,多个人合作一个文档, 多个人同时工作互不影响。

所有的编辑历史都被保留。而且能够查看每个版本内容变更的情况,避免因为故障带来找不到文件、找不到记录的风险。

什么是gitbook?

介绍一下gitbook。

GitBook是一款文档编辑工具。

功能类似WPS、Word,但更简化。

它可以用来写文档、建表格、插图片、生成pdf。

但是,GitBook还有更最强大的功能:

它可以用文档建立一个网站,让更多人了解你写的书。

更美妙的是,它支持Git,也就意味着,它是一个分布式的文档编辑工具。 你可以随时随地来编写你的文档,也可以多人共同编写文档,哪怕多人编写同一页文档,它也能记录每个人的内容,然后告诉你他们之间的区别,也能记录你的每一次改动,你可以查看每一次的书写记录和变化,哪怕你将文档都删除了,它也能找回来!

怎么搭建gitbook环境?

GitBook基于Node.js,首先需要安装 Node.js。

注意:最新版Node.js与GitBook可能不兼容(我就掉在这个坑了,安装和启动 GitBook 命令时会出现错误提示),建议直接安装v10.22.0。

node.js下载地址:Download | Node.js ,找到自己电脑对应平台的v10.22.0版安装即可。

在安装 Node.js 时,默认安装 npm(node 包管理工具),安装完成后,检查版本:
image

打开命令行,执行以下命令安装 GitBook:npm install -g gitbook-cli

安装完后,就会多了一个 gitbook 命令,查看版本:

怎么编辑文档

创建编辑gitbook有多种方式,使用默认Gitbook editor本地编辑器,(下载地址: GitBook - Where technical teams document.

在这里,推荐使用markdown这种精简的标记语言进行编写,工具推荐:Typora(下载地址:https://typora.io/),当然也可以用其它markdown编辑工具来编写。

怎么协同开发文档

虽然git跟gitbook跟老婆与老婆饼一样,互相之前并没太大关系,不过我们仍然把它们当做天然的搭档,用git做版本管理和协同开发。

公司质量管理部提供的配置管理服务包括git服务,需要可以申请。我们需要安装git客户端,一般我们用到的只是clone、 commit,push,pull几个命令。

如果使用TortoiseGit客户端,具体使用时跟SVN相差不大,只是对于进行版本管理为说,git在分布式管理方面更强大。

用gitbook生成网站、书或技术文档

首先,要建一个目录,比如:gitbook

然后在该文件夹下执行gitbook init
image

执行完成,回到gitbook文件夹,可以看到里面多了两个文件:

README.md 是对书籍的介绍

SUMMARY.md 是书籍的目录结构

安装推荐的md文件编辑工具Typora,打开Typora,选择文件夹,就可以编辑内容了。

书或网站的目录结构可以提前确定建立并编辑,编辑使用Markdown语法,使用Typora可以快捷编辑。

内容编辑完成后回到命令行状态,gitbook serve来预览这本书籍:
image

最后提示是Serving book on http://localhost:4000,时 Markdown 格式的文档已经被转换为 html 格式了,打开浏览器输入上面的网址http://localhost:4000,就可以看到书籍效果。

书籍编写完成,在终端执行gitbook build,会在文件夹中生成一个_book 文件夹, 里面的内容即为生成的 html 文件。

生成PDF格式的电子书,则在终端执行:gitbook pdf ./ ./gitbook.pdf

最后,推荐个详细的gitbook使用教程:https://einverne.github.io/gitbook-tutorial/
Gitbook,我们已经在用了,你呢?