<br/ >

本文已停止更新,点击此链接查看本文最新内容 !!!

1、Gitbook 简介

1.1 Gitbook

  • GitBook 是一个基于 Node.js 开发的命令行工具,使用它可以很方便的管理电子书,GitBook 是目前最流行的开源书籍写作方案。

  • 使用 GitBook 可以让创作者专注写作,自由的挥洒,不必太多的关心内容排版、发布和版本管理等问题。

  • 除了通过 GitBook 命令行管理电子书外,还可以在线或者使用桌面编辑器 Gitbook Editor 来编写和管理电子书。

  • 对于新手来说,推荐使用 Gitbook Editor 来编写和管理电子书,因为它集成了 GitBook 命令、Markdown 编器和 Git 的功能,内容通过 Git 可与 gitbook.com / Gitlab / GitHub 同步,方便版本管理和团队协作。

  • 可对于程序员或熟悉 Git 和 Markdown 的人,更推荐使用 GitBook 命令行 + Typora + SourceTree 来编写和管理电子书。使用专业工具做专业的事,比 Gitbook Editor 高效很多。

  • GitBook 是开源的。

1.2 GitBook 功能

  • 支持 Markdown 或 AsciiDoc 语法。
  • 可导出静态站点或电子书(PDF、epub、mobi)。
  • 支持多语言。
  • 可设置封面。
  • 支持变量、模板和模板继承。
  • 有丰富的插件。

1.3 GitBook 的工具组合

  • Node.js:为了使用 npm 安装 GitBook,一定要先安装 Node.js。
  • GitBook 命令:基于 Node.js 开发的命令行工具,用于创建和管理电子书。
  • Markdown:GitBook 使用 Markdown 来写作,作者再也不用担心排版了。
  • Git:GitBook 使用 Git 管理写作内容,方便多人协作和版本管理。
  • Github/Gitlab:跟代码一样,写作的内容可以托管在 Github 或 Gitlab 中。
  • gitbook.com:用于在线编写、发布和托管电子书的网站。

1.4 GitBook 的使用场景

  • 搭建公司内部的文档平台,用于公司内部的资料共享。
  • 发表开源的电子书,用于在互联网上共享自己的知识,普惠大众。

2、Gitbook 环境配置

2.1 安装 Node.js

  • 因为 GitBook 是使用 Node.js 开发的,需要通过 Node.js 包管理工具 NPM 安装,所以在开始之前要先把 Node.js 安装好。

2.2 安装 GitBook

  • 使用 NPM 安装 GitBook 的命令行工具。

    $ sudo npm install gitbook-cli -g
  • 安装完成后查看 GitBook 的版本。

    $ gitbook --version
  • 更新 GitBook 命令。

    $ npm update gitbook-cli -g
  • 卸载 GitBook 命令。

    $ sudo npm uninstall gitbook-cli -g
  • 注意:

    • 本例中使用的是全局安装 GitBook 命令,还有一种安装方式是本地安装,两种方式有什么不同呢?

      • 本地安装:安装包会被下载到当前所在目录,因此只能在当前目录下使用。
      • 全局安装:安装包会被下载到到特定的系统目录下,安装包能够在所有目录下使用。
    • 例如,查看 macOS 下全局安装被安装到了哪里?

      $ which gitbook
      /usr/local/bin/gitbook
      • GitBook 被安装到了 /usr/local/bin/ 目录下,因此可以全局使用。

2.3 快速开始 GitBook

  • 1)初始化 GitBook

    # 创建 mygitbook 文件夹,并切换到这个文件夹下面
    $ mkdir mygitbook && cd mygitbook # 初始化 gitbook 工作目录,创建必要的文件
    $ gitbook init
    warn: no summary file in this book
    info: create README.md
    info: create SUMMARY.md
    info: initialization is finished
    • 然后会初始化 GitBook 目录,创建两个 md 格式的文件 README.md 和 SUMMARY.md

      • README.md - 项目的介绍都写在这个文件里。
      • SUMMARY.md - GitBook 的目录结构在这里配置。
  • 2)定义目录结构

    • 两种方法

      • 在 SUMMARY.md 文件中定义目录结构有两种方法。

        • 方法 ➊. 先定义好目录结构,通过 gitbook init 自动生成目录结构对应的文件夹和 Markdown 文件。

        • 方法 ➋. 先创建好文件夹和 Markdown 文件再来编辑目录结构。

    • SUMMARY.md

      • SUMMARY.md 的目录结构长什么样?看下面:

        # Summary
        
        * [项目简介](README.md)
        * [快速开始](docs/快速开始.md)
        * [环境搭建](docs/环境搭建.md)
        * [简单使用](docs/简单使用.md)
        * [学入学习](docs/深入学习)
    • 这个目录建好以后在根目录下执行命令:

      $ gitbook init
    • 那些没有的目录和文件都会被创建:

      info: create docs/快速开始.md
      info: create docs/环境搭建.md
      info: create docs/简单使用.md
      info: create docs/深入学习.md
      info: create SUMMARY.md
      info: initialization is finished
      • gitbook init 只支持生成两级目录。
  • 3)启动服务

    • 在根目录执行命令:

      $ gitbook serve
      • 结果:

        Live reload server started on port: 35729
        Press CTRL+C to quit ... info: 7 plugins are installed
        info: loading plugin "livereload"... OK
        info: loading plugin "highlight"... OK
        info: loading plugin "search"... OK
        info: loading plugin "lunr"... OK
        info: loading plugin "sharing"... OK
        info: loading plugin "fontsettings"... OK
        info: loading plugin "theme-default"... OK
        info: found 5 pages
        info: found 0 asset files
        info: >> generation finished with success in 1.9s ! Starting server ...
        Serving book on http://localhost:4000 # 注意浏览地址
    • 执行 gitbook serve 命令后,会先编译书籍 gitbook build,如果没有问题会打开一个 Web 服务器,默认监听 4000 端口。如果编译有问题,会抛出错误信息。

    • 快速启动 GitBook 服务器脚本下载,点击查看软件下载密码获取方法

  • 4)查看效果

Gitbook 命令行工具的更多相关文章

  1. GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟。

    GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟. 支持输出多种格式 GitBook支 ...

  2. windows下的命令行工具babun

    什么是babun babun是windows上的一个第三方shell,在这个shell上面你可以使用几乎所有linux,unix上面的命令,他几乎可以取代windows的shell.用官方的题目说就是 ...

  3. 『.NET Core CLI工具文档』(一).NET Core 命令行工具(CLI)

    说明:本文是个人翻译文章,由于个人水平有限,有不对的地方请大家帮忙更正. 原文:.NET Core Command Line Tools 翻译:.NET Core命令行工具 什么是 .NET Core ...

  4. 命令行工具aspnet_regiis.exe实现加密和解密web.config

    命令行工具aspnet_regiis.exe,是一个类似于DOS的命令工具,称之为命令解释器.使用命令行工具加密和解密web.config文件中的数据库连接字符串时,只需要简单的语法命令即可. 加密语 ...

  5. nodejs 编写(添加时间戳)命令行工具 timestamp

    Nodejs除了编写服务器端程序还可以编写命令行工具,如gulp.js就是Nodejs编写的. 接下来我们来实现一个添加时间戳的命令: $ timestamp action https://www.n ...

  6. 如何用Node编写命令行工具

    0. 命令行工具 当全局安装模块之后,我们可以在控制台下执行指定的命令来运行操作,如果npm一样.我把这样的模块称之为命令行工具模块(如理解有偏颇,欢迎指正) 1.用Node编写命令行工具 在Node ...

  7. Orchard中的命令行工具

    在Orchard中提供了一个命令行工具,我们可以使用这个命令行工具创建用户.创建博客.生成代码.配置网站.打包模块等.并且这个命令行工具是可以扩充的,只要我们在自己开发的模块中创建一个Command类 ...

  8. Linux 性能监控之命令行工具

    引言 对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因.这个命令行工具列表提供了足够的 ...

  9. 命令行工具解析Crash文件,dSYM文件进行符号化

    备份   文/爱掏蜂窝的熊(简书作者)原文链接:http://www.jianshu.com/p/0b6f5148dab8著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 序 在日常开发 ...

随机推荐

  1. Codeforces 295C Greg and Friends BFS

    Greg and Friends BFS的过程中维护一下方案数. 我个人感觉不是很好想, 但是写出来之后怎么感觉这题这么SB啊啊. #include<bits/stdc++.h> #def ...

  2. 【noip模拟赛4】找啊找啊找BF 拓扑排序

    描述 sqybi上次找GF的工作十分不成功,于是依旧单身的他在光棍节前的某天突发奇想,要给自己找一个BF(这里指的是男性的好朋友……),这样既可以和人分享内心的压抑(路人甲:压抑还分享么……),也可以 ...

  3. ARIMA模型---时间序列分析---温度预测

    (图片来自百度) 数据 分析数据第一步还是套路------画图 数据看上去比较平整,但是由于数据太对看不出具体情况,于是将只取前300个数据再此画图 这数据看上去很不错,感觉有隐藏周期的意思 代码 # ...

  4. 012.Docker私有仓库多Harbor同步部署

    一 Harbor主从介绍 harbor官方默认提供主从复制的方案来解决镜像同步问题,通过复制的方式,我们可以实时将测试环境harbor仓库的镜像同步到生产环境harbor,类似于如下流程: Harbo ...

  5. 机器学习 Logistic 回归

    Logistic regression 适用于二分分类的算法,用于估计某事物的可能性. logistic分布表达式 $ F(x) = P(X<=x)=\frac{1}{1+e^{\frac{-( ...

  6. 使用perf工具导致系统hang死的原因

    [perf工具导致系统hang住的原因是触发了低版本kernel的bug] 今天在测试服务器做压测,运行perf record做性能分析时,系统再次hang住了,这次在系统日志中记录了一些有用的信息, ...

  7. 更新 是 可用的 针对 安卓 软件开发包和工具 Updates are available for android software development packages and tools

    作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313134555 @qq.com 更新 是 可用的 针对 安卓 软件开发包和工 ...

  8. C语言---斐波那契问题

      最近学习了一个叫递归的概念,里面最著名的一个例子就是斐波那契问题,觉得很有意思,就来实现一下: 什么是斐波那契数列   斐波那契数列,又称黄金分割数列,值得这样一个数列:0.1.1.3.5.8.1 ...

  9. 10.31 正睿停课训练 Day13

    目录 2018.10.31 正睿停课训练 Day13 A Poker(期望) B Label(高斯消元) C Coin(二分图染色 博弈) 考试代码 A(打表) B 2018.10.31 正睿停课训练 ...

  10. 潭州课堂25班:Ph201805201 并发(协程) 第十五课 (课堂笔记)

    #斐波那契 def fid(n): res = [] indx = 0 a = 0 b = 1 while indx < n : res.append(b) a,b = b,a+b indx + ...