一、安装

https://github.com/GitbookIO/gitbook/blob/master/docs/setup.md

# 通过npm全局安装
npm install gitbook-cli -g # 查看版本
gitbook --version

二、创建一本书

2.1 本地创建

# 创建一个文件夹
mkdir mysql-note # 初始化
cd mysql-note
gitbook init
# 会创建两个文件
# README.md 书皮
# SUMMARY.md 目录 # 从本地打开这本书
gitbook serve
# 将md文件编译成html文件并输出到_book目录下

可以本地访问:http://localhost:4000

2.2 备份到github

# 从github上创建一个名为mysql-note的仓库

# 将mysql-note这个目录初始化为一个git仓库
git init # 创建.gitignore文件,忽略_book文件
vi .gitignore
# 追加
_book/ # 提交
git commit -m "first commit" # 关联github上创建的库
git remote add origin git@github.com:clzbgl/mysql-note.git # 推送到远程库
git push -u origin master

2.3 通过网络访问这本书

2.3.1 调整目录结构

# 调整目录结构
mkdir content
mv *.md content/
mv git content/

调整前

调整后

2.3.2 变成node项目

# 将当前项目变成node项目
npm init
# 一路回车,生成package.json文件

package.json

2.3.3 配置脚本

将下面这段脚本复制到package.json中相应位置

"scripts": {
"start": "gitbook serve ./content ./gh-pages",
"build": "gitbook build ./content ./gh-pages",
"deploy": "node ./scripts/deploy-gh-pages.js",
"publish": "npm run build && npm run deploy",
"port": "lsof -i :35729"
},

2.3.4 启动命令start

# 启动,调用npm脚本
npm run start # 修改.gitignore,将gh-pages和node_modules加入到忽略
gh-pages
node_modules

2.3.5 编译命令build

# 启用build
npm run build

2.3.6 部署命令deploy

创建发布脚本 scripts/deploy-gh-pages.js

'use strict';
var ghpages = require('gh-pages');
main();
function main() {
ghpages.publish('./gh-pages', console.error.bind(console));
}

关于这段脚本

# gh-pages的publish方法,创建gh-pages分支,将修改拷贝到gh-pages分支并且上传到github

# 安装gh-pages这个包
npm install --save gh-pages

2.3.7 发布命令publish

执行发布命令

# 执行发布命令,就是先执行编译再执行部署
npm run publish
# 输入undefined表示成功

访问 https://clzbgl.github.io/mysql-note/

2.4 放一张图片

图片放到content/img/目录下

执行一下发布命令,就可能通过网络看到效果了。

三、参考

使用Gitbook做笔记的更多相关文章

  1. 使用ZIM桌面维基做笔记

    最近尝试了使用ZIM做笔记,感觉还不错 ubuntu下直接到软件中心即可安装,或者 sudo apt-get install zim windows下的到此下载http://www.glump.net ...

  2. PDF加密无法做笔记

    尝试打印PDF,若无法打印,可以利用PDFescape(http://www.pdfescape.com/) PDFescape是一个可以在线修改.做笔记的网站,但是在线使用有上传PDF大小限制(小于 ...

  3. php面试题9(看的时候就应该随手截图做笔记的)

    php面试题9(看的时候就应该随手截图做笔记的) 一.总结 看的时候就应该随手截图做笔记的 二.php面试题9 一.选择题:1.下面哪个表达式不能将两个字符串$s1 和$s2 串联成一个单独的字符串? ...

  4. 【原创】复制知乎“禁止转载”的内容做笔记 - 基于oncopy监听器的简单解决方案

    原理:移除所有oncopy的监听器. 使用: 新建书签,地址设为: javascript: getEventListeners(document).copy.forEach(({listener}) ...

  5. 使用Typora做笔记

    本文旨在分享使用Typora做笔记的一些心得 一.介绍 为什么要用Typora 作为一个程序员,在学习过程中打交道的不单单是文字,还有各种语言的代码块和公式,以及一些简单的流程图和思维导图(就目前而言 ...

  6. Oracle常用命令大全(很有用,做笔记)

    一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl ...

  7. 今天第一次接触到typescript,看了第一个知识点就是变量的声明,来回忆回忆,做做笔记

    以前只用过JavaScript原生写网站特效,今天还是第一次听说typescript的,然后看了一下它的基本知识,感觉很像Java,真的太像了,但是又有不同点.很让我惊奇看到的第一个知识点就和以前不同 ...

  8. 初尝seajs,只提供自己学习做笔记

    (仅供自己使用,勿喷) 闲着无聊,尝试下seajs, 只是在公司项目上随便添加并测试了一下,做下记录, 方便以后自己使用更快的上手: 下载最新的sea.js, v- 3.0.0 新建seajsConf ...

  9. 《那些年,我们拿下FPGA》做笔记

    spld.cpld和fpga等可不管什么样的逻辑是大自然来实现.任何逻辑可以由多项式来表示(要么逼关闭).比多项式乘法和处理操作仅此而已. 而就.您可以在门线上用.或门添加剂. fpga扩展架构SOP ...

随机推荐

  1. kali Linux 渗透测试 | ettercap图形界面(ARP 欺骗 + DNS欺骗)

    上次我们使用 arpspoof 工具在命令行中完成了 arp 欺骗实验,今天我们用另一种工具 ettercap 工具来实现.ettercap支持图形化操作,对新手非常友好,并且操作非常简单, ette ...

  2. 简单vue项目脚手架

    简单vue项目脚手架 github地址 使用技术栈 webpack(^2.6.1) webpack-dev-server(^2.4.5) vue(^2.3.3) vuex(^2.3.1) vue-ro ...

  3. 两个echarts地图联动高亮区域

    项目要求左右两张地图能够在鼠标悬浮的时候高亮部分联动,曾尝试了connect不好使,所以自己写了这段代码.代码思路为: 鼠标移入地图时,另一侧的地图根据鼠标悬浮获取到的区域name使该区域高亮: 鼠标 ...

  4. Android 动态控制OptionMenu的显示与隐藏

    在有些场景下,可能需要动态的显示和隐藏optionmenu,可以这样实现:如果在activity中默认实现了方法: onCreateOptionsMenu(Menu menu) 那么该OptionMe ...

  5. jquery 常用选择器和方法以及遍历(超详细)

    jQuery 常用选择器和和方法 学习总结 一.JQuery 介绍 1. 什么是 jQuery 2. jQuery 版本介绍 3. jQuery 文件介绍 二.jQuery 对象 1. jQuery ...

  6. 关于#pragma 和 _pragma

    首先要明确 #pragma 和_Pragma 是什么 这两个都是出自于c/c++ 的 ,其中#pragma 是预处理指令(preProcess directive ) ,#pragma是用来向编译器传 ...

  7. linux磁盘之lsblk命令

    lsblk命令可以显示很多跟磁盘相关分区.所属关系以及lvm的重要信息,所以这个命令最好掌握.lsblk命令默认情况下将以树状列出所有块设备,包括查看磁盘挂载信息.lsblk命令包含在util-lin ...

  8. android软件简约记账app开发day06-将记账条目添加到数据库并且绘制备注页面

    android软件简约记账app开发day06-将记账条目添加到数据库并且绘制备注页面 首先写添加到数据库 在DBOpenHelper中添加创建记账表的语句 //创建记账表 sql = "c ...

  9. RecyclerView + SQLite 简易备忘录-----下

    最后就是添加备忘录的界面了.同时也是显示备忘录内容的界面. 1.activity_add_info.xml 也是比较简陋的一个页面设计. 顶部是一个自定义的Toolbar,剩下的部分都是ScrollV ...

  10. Jmeter监控平台搭建:JMeter+InfluxDB+Grafana

    背景 平时一般用Jmeter的Gui模式,添加对应的插件,查看每秒线程数.TPS.响应时间等曲线,其实高并发是不建议这么看的. 解决方案 可以搭配InfluxDB+Grafana工具,使Jmeter异 ...