发布一本用 GitBook 编辑的书
在上一篇的文章里,我们已经写好了一本名叫 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 编辑的书的更多相关文章
- 如何在 GitHUb 上使用 gitbook 发布一本在线书籍
如何在 GitHUb 上使用 gitbook 发布一本在线书籍 ebook / pdf refs https://docs.gitbook.com/integrations/github xgqfrm ...
- 清华大学出版社即将推出的又一本挂羊头卖狗肉的劣书 《C语言入门1.2.3—一个老鸟的C语言学习心得》
http://www.tup.com.cn/book/showbook.asp?CPBH=051892-01
- 推荐大家一本学习php模式的书
对我来讲,写程序不是码代码,不想只是简单的将类拿来调用,然后功能实现了,可是以后要做一些扩展或者是修改就要对代码大刀阔斧. 在网站的开发过程中,使用一些框架,团队就可以在一定的程度上,分工合作.但是当 ...
- Markdown For EditPlus插件发布(基于EditPlus快速编辑Markdonw文件,写作爱好的福音来啦)
详细介绍: Markdown For EditPlus插件使用说明 开发缘由 特点好处: 中文版使用说明 相关命令(输入字符敲空格自动输出): EditPlus常用快捷键: 相关教程: English ...
- python threading编程中的LOCK和RLOCK(可重入锁)
找到一本PYTHON并发编辑的书, 弄弄.. #!/usr/bin/env python # -*- coding: utf-8 -*- import threading import time sh ...
- 写了两年的一本.NET书现在终于在北京最大的新华书店上架了,然而我却很难找到工作了。
两年前,有几个出版社的编辑在QQ上跟我联系写书的事情,好奇为什么出版社会找到我这样一个很普通的.NET技术人员,其中一个编辑说他们分析了很多博客园博主的文章阅读量和写作质量,觉得我的博客还是不错的.尽 ...
- gitbook 入门教程之使用 gitbook-cli 开发电子书
gitbook 生成电子书主要有三种方式: gitbook-cli 命令行操作,简洁高效,适合从事软件开发的相关人员. gitbook-editor 编辑器操作,可视化编辑,适合无编程经验的文学创作者 ...
- 使用GitBook编写项目文档
GitBook简介 GitBook 是使用 GitHub / Git 和 Markdown(或AsciiDoc)构建漂亮书籍的命令行工具(和Node.js库): GitBook 可以将您的内容作为网站 ...
- 翻书插件:wowbook.js
wowbook是一个jQuery插件,可以让你在网站中发布一本页面翻转效果超赞的书. demo演示 基本页面 <!DOCTYPE html> <html lang="en& ...
随机推荐
- C# SqlSugarClient分析一点
public class UserManager : DbContext<User>{} UserManager userdb = new UserManager(); //创建对象 va ...
- EventArgs
序言 DataEventArgs<DataSet> arg = new DataEventArgs<DataSet>(ds); 事件总线 什么是事件总线 我们知道事件是由一个P ...
- 【java工具类】生成Zip压缩包
多文件生成压缩包,返回压缩包生成位置的路径. FileUtil.java /** * 文件打压缩包 * @param files * @param Name * @return * @throws E ...
- sh_04_累加求和
sh_04_累加求和 # 计算 0 ~ 100 之间所有数字的累计求和结果 # 0. 定义最终结果的变量 result = 0 # 1. 定义一个整数的变量记录循环的次数 i = 0 # 2. 开始循 ...
- Python字典实现
这篇文章描述了在Python中字典是如何实现的. 字典通过键(key)来索引,它可以被看做是关联数组.我们在一个字典中添加3个键/值对: >>> d = {'a': 1, 'b': ...
- JMS学习八(ActiveMQ消息持久化)
ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,还有一种内存存储的方式,由于内存不属于持久化范畴,而且如果使用内存队列,可以考虑使用更合适的产品,如ZeroMQ.所以 ...
- [51nod1383&1048]整数分解为2的幂:DP
算法一 分析 \(f[x]=f[x-1]+f[x/2] \times [x \equiv 0 \mod 2],O(n)\) 代码 n=int(input()) f=[0]*(n+5) f[0]=1 m ...
- 聊一聊几种常用web图片格式:gif、jpg、png、webp
前言 在大多数的web页面中,图片占到了页面大小的60%-70%.因此在web开发中,不同的场景使用合适的图片格式对web页面的性能和体验是很重要的.图片格式种类非常多,本文仅针对几种web应用中常用 ...
- smartload跨浏览器极速缓存插件用法
smartload由39smart团队原创,主要实现前端css/js的一次加载请求,永久缓存的加速效果,在移动端效果非常明显. 插件特点: 支持平台: PC和移动端所有版本浏览器,ie6+,firef ...
- Oracle开发:创建一个用户并分配表空间和分配权限
-- 创建一个用户并分配表空间和分配权限 -- 以sysdba登录 oracle@sha-col-oracle-2:~> sqlplus / as sysdba SQL*Plus: Releas ...