利用git作为版本管理和发布工具
你可以直接通过npm安装gitbook到全局
npm install -g gitbook
gitbook只提供了如下四个命令
gitbook -h
Usage: gitbook [options] [command]
Commands:
build [options] [source_dir] 编译指定目录,输出Web格式(_book文件夹中)
serve [options] [source_dir] 监听文件变化并编译指定目录,同时会创建一个服务器用于预览Web
pdf [options] [source_dir] 编译指定目录,输出PDF
epub [options] [source_dir] 编译指定目录,输出epub
mobi [options] [source_dir] 编译指定目录,输出mobi
init [source_dir] 通过SUMMARY.md生成作品目录
源文件目录一般是这样的.
  • LANGS.md
当你需要发布多个语言版本时,根目录只需要放置一个LANGS.md, 格式如下
* [English](en)
* [中文](zh)
* ...
每个zh,en文件夹现在就相当于一个独立的书籍.
  • README.md 相当于书籍的前言部分, 可以忽略
cover_small.png 和 cover.png书籍的封面图
SUMMARY.md
SUMMARY是最重要的一个部分, 它创建的是整书的索引, 可以通过gitbook init读取SUMMARY.md来生成目录结构,格式如下
注意:*和-都是无序列表符号
* [前言](introduct/README.md)
- [API索引](introduct/index.md)
* [高级特性](advanced/README.md)
- [内嵌组件](advanced/component.md)
- [regular的transclude](advanced/content.md)
- [小节](advanced/review.md)
接下来就是依次完成你每个章节的书写了, 你需要开启gitbook serve .来进行实时的web预览(服务器默认为localhost:400)
现在的程序圈的markdown包括gitbook普遍使用的是GitHub Flavored Markdown,除了github中已经说明的那些, 它还支持一些额外的小特性, 比如[x]可以用来设置一个checkbox来实现todolist的功能.
发布
可以直接使用git发布,首先你需要添加gitbook的仓库作为你的一个远程库. 比如regularjs的路径为
git remote add gitbook https://push.gitbook.io/leeluolee/regular-guide.git
git push gitbook master
可以发布到我的个人网站吗?
当然可以,gitbook build之后的_book 就是一个完整的web目录, 你可以放置到你的个人网站上.
一个更好的做法是直接发布到github的gh-pages上, 由于gitbook每次build都会重新生成整个目录.所以你需要利用gulp-gh-pages或grunt-gh-pages等工具进行发布.
你可以参考我的做法, 这样一键gulp deploy可以完成指定目录_book发布gh-pages.
创建了这两个文件后,使用 gitbook init,它会为我们创建 SUMMARY.md 中的目录结构。
GitBook使用
在线编辑:进入到书籍的属性页面后,点击 "Edit Book" 按钮即可打开在线编辑器。
另一种方式,是直接使用文本编辑器,编写 Markdown 文档,然后,使用 Git 提交到书籍的远程项目,当然,提交前,最好在本地使用 gitbook 预览效果;提交后,GitBook.com 会自动生成更新书籍的内容。

使用GitBook, Git github, Markdown 快速发布你的书籍的更多相关文章

  1. 写作环境搭建(git+github+markdown+jekyll)

    转载自: https://site.douban.com/196781/widget/notes/12161495/note/264946576/ 2013-03-04 19:33:10   --- ...

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

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

  3. git &github 快速入门

    本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 1.gi ...

  4. GitBook – 使用 GitHub 和 Markdown 制作书籍

    GitBook 是一个命令行工具(也是 Node.js 库),让你能够使用 GitHub/Git 和 Markdown 构建出美丽的编程书籍,可以包含互动的练习.GitBook 支持使用多种语言构建书 ...

  5. Python开发【笔记】:git&github 快速入门

    github入门 简介: 很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了. Linus虽然创建了Linux,但Linux的壮大 ...

  6. Git&GitHub&GitBook

    一.定义 Git(分布式版本控制系统) GitHub gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub. gitHub于2008年4 ...

  7. 新版markdown功能发布!支持github flavored markdown!

    让大家久等了!新版markdown功能一直拖到今天才发布,很是愧疚...但不管怎么样,总算发布了! 今年1月份发布第一版markdown功能之后,很多园友反馈说做得很烂,我们综合大家的反馈之后发现不仅 ...

  8. git&github快速掌握

    git&github快速掌握 安装git 版本库创建 代码修改并提交 代码回滚 工作区和暂存区 撤销操作 删除操作 更多操作 Windows下安装git https://gitforwindo ...

  9. git和github新手快速操作流程

    git和github新手快速操作流程 本文主要介绍利用git版本控制将项目托管到远程仓库github上的一般性操作流程,为了给正在学习git的同学们一个小小的参考,以便更轻松的去深入学习git,本文所 ...

随机推荐

  1. 2.5多线程(Java学习笔记)生产者消费者模式

    一.什么是生产者消费者模式 生产者生产数据存放在缓冲区,消费者从缓冲区拿出数据处理. 可能大家会问这样有何好处? 1.解耦 由于有了缓冲区,生产者和消费者之间不直接依赖,耦合度降低,便于程序拓展和维护 ...

  2. Java实现中文算数验证码(算数运算+-*/)

    原文:http://blog.csdn.net/typa01_kk/article/details/45050091 /** * creat verification code * */ @Actio ...

  3. vs2012 webservice创建

    第一步:打开VS2012,新建空项目,注意选择.NET Framework的版本.这里我选择的是.NET Framework 4 新建好项目后,在项目中添加一个WebService项 打开这个文件,我 ...

  4. windows下搭建svn服务器

    转自:http://www.cnblogs.com/cloud2rain/archive/2013/04/11/3015080.html 这篇文档非常好,转来学习,有一点就是把subversion创建 ...

  5. 十步完全理解 SQL

    很多程序员视 SQL 为洪水猛兽.SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言.面向对象的程序语言.甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言) ...

  6. mysql行转列,单列转多行

    行转列 使用CASE语句: SELECT SUM(CASE USER_NAME='A' THEN KILLS END) AS 'A', SUM(CASE USERNAME='B' THEN KILL ...

  7. Java 数字签名原理及产生

    数字签名与数字证书 关于数字签名的介绍可以参考以上这篇. 这里稍微说一下不对称加密的方式: 用公钥加密的内容只能用私钥解密,用私钥加密的内容只能用公钥解密. 这样比对称加密更安全 Java 中数字签名 ...

  8. Spark 2.0 DataFrame map操作中Unable to find encoder for type stored in a Dataset.问题的分析与解决

    转载:http://blog.csdn.net/sparkexpert/article/details/52871000 随着新版本的spark已经逐渐稳定,最近拟将原有框架升级到spark 2.0. ...

  9. 2017.8.4 Creating Server TCP listening socket *:6379: bind: No such file or directory

    启动redis时出现如下错误:  解决办法:按顺序输入如下命令就可以连接成功. 1. redis-cli.exe 2. shutdown 3. exit 4. redis-server.exe 参考来 ...

  10. [Angular] ngPlural

    The usecase is very simple: <div [ngPlural]="items.length"> <ng-template ngPlural ...