一、安装
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/目录下
执行一下发布命令,就可能通过网络看到效果了。