在上一篇的文章里,我们已经写好了一本名叫 erdong-first-book 的书,但是在本地浏览很不方便,我们希望放到网络上,可以随时、方便的访问这个书籍。这个需求可以使用多种方式来实现,比如第一种,可以通过 GitBook 官网来发布这本书,GitBook 除了是一个电子书的工具以为,自身也有一个网址,在该网站注册成为会员后,可以发布自己的电子书,并且可以和 GitHub 进行关联。

除了使用 GitBook 官网以外,可以直接将电子书放在 GitHub 上,通过 GitHub Pages 来发布这本书。

使用 GitHub 发布你的书籍

接下来我们看一下如何使用 GitHub Pages 来发布一本书。

首先你需要一个 GitHub 的账号,在你的账号下创建一个用来放置你书籍的仓库,这两个步骤在网络上有太多的资料,很容易就可以达成了。

创建好仓库以后,在仓库中创建一个 docs 文件夹,用来放置 GitBook 生成的静态文件。

打开 GitHub 仓库的设置页面,找到 GitHub Pages 选项,选择 master branch /docs folder 选项即可。

注意:一定要先在仓库中创建 docs 文件夹,否则无法勾选该选项。

做完上述步骤以后开始使用 Git 上传你写好的内容到 GitHub , 关键点是将 GitBook 生成的静态文件 _book 重命名为 docs 上传替换刚才创建的 docs 文件夹即可。

这个时候使用浏览器打开 http://your_github_id.github.io/your_github_gitbook 这个地址即可。比如我的 GitBook 地址是

http://erdong.github.io/gitbook-notes-samples ,大家在点击以后发现会自动跳转到 https://erdong.site/gitbook-notes-samples 是因为我做了域名绑定。

本地 GitBook 迁移

在迁移前可以使用如下命令查看一下曾经使用 npm 安装过什么模块

npm list -g --depth 0
  • list : 已经安装的 node 包
  • -g : 全局的安装包
  • --depth : 包的显示层级,0 代表显示第一级的包,数字越大,显示的越全。

迁移其实非常简单,你在原来的环境将整本书打包,最好把文件夹里的node_modules 目录也一起打包,这样在新的环境就不需要安装这些组件了。在新的环境按照如下顺序依次进行安装你之前安装过的组件

< 1.> 安装 npm

< 2.> 安装 gitbook

< 3.> 拷贝打包好的文件夹

< 4.> 减压到新的位置

这样就完成了你的书的迁移。你在新的位置可以继续进行内容的编写、静态文件的生成,和之前一样,没有任何区别。

发布一本用 GitBook 编辑的书的更多相关文章

  1. 如何在 GitHUb 上使用 gitbook 发布一本在线书籍

    如何在 GitHUb 上使用 gitbook 发布一本在线书籍 ebook / pdf refs https://docs.gitbook.com/integrations/github xgqfrm ...

  2. 清华大学出版社即将推出的又一本挂羊头卖狗肉的劣书 《C语言入门1.2.3—一个老鸟的C语言学习心得》

    http://www.tup.com.cn/book/showbook.asp?CPBH=051892-01

  3. 推荐大家一本学习php模式的书

    对我来讲,写程序不是码代码,不想只是简单的将类拿来调用,然后功能实现了,可是以后要做一些扩展或者是修改就要对代码大刀阔斧. 在网站的开发过程中,使用一些框架,团队就可以在一定的程度上,分工合作.但是当 ...

  4. Markdown For EditPlus插件发布(基于EditPlus快速编辑Markdonw文件,写作爱好的福音来啦)

    详细介绍: Markdown For EditPlus插件使用说明 开发缘由 特点好处: 中文版使用说明 相关命令(输入字符敲空格自动输出): EditPlus常用快捷键: 相关教程: English ...

  5. python threading编程中的LOCK和RLOCK(可重入锁)

    找到一本PYTHON并发编辑的书, 弄弄.. #!/usr/bin/env python # -*- coding: utf-8 -*- import threading import time sh ...

  6. 写了两年的一本.NET书现在终于在北京最大的新华书店上架了,然而我却很难找到工作了。

    两年前,有几个出版社的编辑在QQ上跟我联系写书的事情,好奇为什么出版社会找到我这样一个很普通的.NET技术人员,其中一个编辑说他们分析了很多博客园博主的文章阅读量和写作质量,觉得我的博客还是不错的.尽 ...

  7. gitbook 入门教程之使用 gitbook-cli 开发电子书

    gitbook 生成电子书主要有三种方式: gitbook-cli 命令行操作,简洁高效,适合从事软件开发的相关人员. gitbook-editor 编辑器操作,可视化编辑,适合无编程经验的文学创作者 ...

  8. 使用GitBook编写项目文档

    GitBook简介 GitBook 是使用 GitHub / Git 和 Markdown(或AsciiDoc)构建漂亮书籍的命令行工具(和Node.js库): GitBook 可以将您的内容作为网站 ...

  9. 翻书插件:wowbook.js

    wowbook是一个jQuery插件,可以让你在网站中发布一本页面翻转效果超赞的书. demo演示 基本页面 <!DOCTYPE html> <html lang="en& ...

随机推荐

  1. 【BZOJ2521】 [Shoi2010]最小生成树

    Description Secsa最近对最小生成树问题特别感兴趣.他已经知道如果要去求出一个n个点.m条边的无向图的最小生成树有一个Krustal算法和另一个Prim的算法.另外,他还知道,某一个图可 ...

  2. nuget push 程序包到nuget服务器时报错 406 (Not Acceptable)

    1.在window服务器上部署nuget服务器时,发布包时出现请求报错 406 (Not Acceptable) 验证用户名.密码正确的情况下,还是出现上面错误.后面跟踪服务器日志,发现window\ ...

  3. java实现微信小程序服务端(登录)

    微信小程序如今被广泛使用,微信小程序按照微信官网的定义来说就是: 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 这就是微信小程序的魅力所在,有 ...

  4. Vue中基本指令用法

    指令在Vue中是个很重要的功能,在Vue项目中是必不可少的.根据官网的介绍,指令 (Directives) 是带有 v- 前缀的特殊属性.指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地 ...

  5. 关于判断StringBuffer是否为空

    对于String和StringBuffer来说,都是通过创建新的char value[]数组来达到字符串改变的操作的,只不过String是通过新创建String对象来达到目的, 而StringBuff ...

  6. python检测编码

    # -*- coding: utf-8 -*- import chardet import urllib #可根据需要,选择不同的数据 TestData = urllib.urlopen('http: ...

  7. vue-loader分析

    分析一下Vue2.0中的vue-loader是如何处理.vue单文件组件的: 1.vueLoaderplugin 作用是 找到.vue,.vue.html的rules然后在他们的rule里添加 pit ...

  8. 阶段3 1.Mybatis_06.使用Mybatis完成DAO层的开发_1 Mybatis中编写dao实现类的使用方式-查询列表

    就是自己写实现类的方式来开发 直接finish 把之前写的CRUD的代码复制到过来. 在把之前pom.xml里面的包的依赖也复制过来 复制到当前的pom.xml内 允许自动导入 以上步骤就是复制了一个 ...

  9. lambda一些查询语句

    <!--得分数据结构-->1 <Score> <studentid>1</studentid> <courseid>1</course ...

  10. oracle-不完全数据库恢复-被动恢复-RMAN-06025/ORA-01190

    不完全数据库恢复 到目前为止,前面讨论的都是完全恢复数据库,这是recover database\recover tablespace\recover datafile默认的行为特征. 所谓完全恢复指 ...