使用github、travis、github pages自动构建发布gitbook页面(国内访问速度会比gitbook快很多)

前言

gitbook使用markdown语法进行写作,自动生成简单漂亮的文档页面,还有海量插件可以使用,并且公开文档都免费提供服务,
使用起来很方便,有配套的软件,就算不懂代码的人用起来也非常简单。

但是有个缺点就是国内访问很慢,慢得连github的pages页面的速度都不如,而且不支持同步github组织的仓库,所以可以考虑将gitbook编译成静态页面发布到pages,
而且希望整个发布过程都是自动的,我们自己后面该文档时要做的就只是写文档(直接文本编辑器或者gitbook编辑器都行),写完后提交推送到github,后面的构建、发布全都不用我们自己操作,都自动完成,于是可以用travis,travis对github十分友好,对于公开的仓库,travis也是免费的

方法和步骤

  • 首先保证注册了github(github.com)账号、travis(travis.org)账号
  • 在github建立文档仓库
  • travis开启同步
新建travis项目
开启同步
  • 设置travis项目


    设置

设置项目变量

设置变量

这些变量的名字和功能取决于yml脚本,这里这几个变量含义如下:
GITHUB_TOKEN : github授权码,在github的Settings -> Developer settings -> Personal access tokens中可以生成一个新的 token,注意一定不能勾选Display Value in build log
GIT_NAME,GIT_EMAIL:昵称和邮箱
CUSTOM_DOMAIN:自定义域名,最后github pages中CNAME文件中的内容

  • 设置文档工程(仓库)
    github仓库新建.travis.yml文件:
language: node_js

node_js:
  - "8"

# 缓存依赖
cache:
  directories:
    - $HOME/.npm

before_install:
  - export TZ='Asia/Shanghai' # 更改时区

# 依赖安装
install:
  - npm install gitbook-cli -g
  # 安装 gitbook 插件
  - gitbook install

# 构建脚本
script:
    # 自定义输出目录 gitbook build src dest
  - gitbook build . ./build
  # - gitbook build . ./build/$CUSTOM_PATH

# 分支白名单
branches:
  only:
    - master # 只对 master 分支进行构建

# GitHub Pages 部署
deploy:
  provider: pages
  skip_cleanup: true
  # 在项目仪表盘的 Settings -> Environment Variables 中配置
  github_token: $GITHUB_TOKEN
  # 将 build 目录下的内容推送到默认的 gh-pages 分支上,并不会连带 build 目录一起
  local_dir: build
  #fqdn: $CUSTOM_DOMAIN
  name: $GIT_NAME
  email: $GIT_EMAIL
  on:
    branch: master
 

这里CUSTOM_PATH被注释了,如果想域名后面还有子文件夹就这样使用,比如自定义域名gprs.neucrack.com,不使用CUSTOM_PATH,则最后的访问地址就是gprs.neucrack.com,而用了CUSTOM_PATH而且设置CUSTOM_PATH变量值为doc,则最后访问地址就是gprs.neucrack.com/doc

上面的代码自定义域名我也注释了,因为没有使用,如果使用自定义域名就取消注释

还需要注意的是,在进行部署的过程中,默认是使用 git push --force 进行推送的,也就是说你的目标分支的历史提交记录只会有最新的那一条,如果需要提交历史的话,可以添加 keep-history: true 选项。

  • 推送更新
    将新建的.travis.yml文件同步到github,会自动触发travis对项目的构建
    构建

    构建成功后便可以在自定义的域名访问了,通常地址为:用户名/组织名.github.io/项目名,如果使用了类似上面的CUSTOM_PATH的文件夹地址,则访问地址是:用户名/组织名.github.io/项目/CUSTOM_PATH

比如这里有个例子:
构建目标仓库是:https://github.com/Ai-Thinker-Open/GPRS_C_SDK_DOC
没有使用自定义域名以及文件路径,最后访问地址是:https://ai-thinker-open.github.io/GPRS_C_SDK_DOC/

为了让gitbook能同时有中文和英文,官方有做多语言:Multi-Languages,但是缺点是不能使用语言特殊的插件了.

可以在一个工程中建立两个文件夹,比如en和zh两个文件夹,然后每个文件夹内放一个gitbook工程,这样生成后就会有中英文目录了,这种方法简单方便,中英文在同一个分支进行维护.

另外一种方式,为了让两种语言为两个独立的工程(/分支),将两种语言放在两个分支上,为了将两个分支编译后合并到一个分支的两个文件夹(zh和en),需要自己写脚本,稍微复杂一点,优点是两个分支可以分开提交互不影响向,不爱折腾不建议用这种方式;可以参考:https://github.com/Ai-Thinker-Open/GPRS_C_SDK_DOC,生成的页面地址是:https://ai-thinker-open.github.io/GPRS_C_SDK_DOC/zhhttps://ai-thinker-open.github.io/GPRS_C_SDK_DOC/en.

可以参考另一个仓库:MAIXPY Doc, 这份文档系统包含了多语言和多版本支持,做得比较全面

MaixPy

也可以参考cocos creator的文档

参考文档

使用 Travis CI 自动部署 GitBook 到 GitHub Pages

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容