travis-ci 自动化部署hexo静态博客

travis-ci 自动化部署hexo静态博客

使用github pages的用户应该都有一个痛点, 就是要本地写好博文后再执行hexo c,hexo g,hexo d等命令, 特别是当博文数量多了的时候hexo g就要等待几分钟甚至更长时间,然后在hexo d 甚是烦恼.

查了资料, 有了travis-ci这个GitHub 的亲兄弟,就容易的多了, 只需3步配置,就可以享受持续集成自动部署博客的.

用户只需要在markdown原文上修改,然后pushgithub上去就可以了,

Step 1 GitHub 上配置

  1. 安装github\ app

    https://github.com/settings/installations

    image-20190825142940431

  2. 申请Personal\ access\ tokens

    转送门 -> https://github.com/settings/tokens

    在这里主要是设置github-token,让travis有权限读写github项目文件

    github上申请一个就好

    生产新的token的按钮.申请好后就会出现下面的那个.

    image-20190825143124613

    我勾选的设置,可以参考

    image-20190825143240304

Step 2 配置travis-ci

  1. https://travis-ci.org配置项目

    注意私有项目需要用https://travis-ci.com 这个是需要费用的.

    github账号登录https://travis-ci.org, 在右上角头像出现下拉框里面选择设置,

    然后找你博客源码所在项目, (我的项目放在tabris233.github.ioblog-source分支下,所以勾选这个项目,然后点后面的Settings)

    image-20190825140545978

    先在2上添加github-token值用刚刚申请好的哪一个, 后面在构建日志中展示值得选项可勾可不勾. 然后点add, 然后就会出现在1的位置.

    Ps: 3 是个定时构建, 看个人心情, 随意了.

    image-20190825141146382

  2. 要在项目根目录建立.travis.yml文件

    其实这个配置文件写的比较烂, https://travis-ci.orggithub\ pages有一个专门的配置yaml,

    我这个算是专门配置加原始配置杂交出来的….

    最后三行感觉没啥用,但是没有就是不行….

language: node_js   # 指定运行环境

node_js: '11'       # node环境的版本

branches:           # 该shell脚本只对github的blog-source分支生效
  only: 
    - t'tblog-source

git:                 # 克隆github上的项目到travis
  quite: true        # 为了不打印一些日志,故设为安静克隆
  depth: 1           # 只克隆最新的一次commit提交,最多可以克隆最新的30次提交,但是没必要
  submodules: true   # 不克隆子项目(避免再次克隆hexo主题)

cache: yarn          # 缓存yarn命令也就是yarn add命令执行后的目录文件,即node_modules

install: 
  - yarn global add hexo-cli # 在安装阶段,运行yarn命令来安装依赖
  - yarn

script:
  - hexo clean
  - hexo generate

deploy:              # 发布阶段
  provider: pages    # 解析支持者为github pages
  skip_cleanup: true # 必须打开,如果在travis构建期间你正在推代码,很可能误删你最新的上传代码
  github_token: $GITHUB_TOKEN  # 在travis的环境变量获取授权码,表示travis有权对github的项目进行拉取推送操作
  keep_history: true # 禁止travis对你的github项目进行强制推送 
  repo: tabris233/tabris233.github.io
  target-branch: master # 你推送到哪个分支.
  fqdn: tabris.top
  local_dir: ./public
  email: tabris.dq@qq.com
  name: tabris
  project_name: tabris_blog_travis-ci
  on:                 # 这个静态文件来自travis中的master分支
    branch: matery
    all_branches: true

Step 3

修改博文markdown 然后push上去就行了. 会看到这样的界面

包含构建日志什么的,最后会部署到github\ pagesmaster分支上

image-20190825141944578


   转载规则


《travis-ci 自动化部署hexo静态博客》 tabris 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
python import python import
未完待续 python import研究​ python用了好久了, 对它的import规则一直都很懵,借此机会梳理下. 首先是导包.导入同目录下的包, 或者安装好的第三方模块, 或者python自带的模块 import modu
2019-08-26
下一篇 
csdn博文迁移至hexo心路历程 csdn博文迁移至hexo心路历程
某天我之前的`hexo`主题被自己玩坏了, 决定换一个主题, 同时突然想把之前`CSDN`博文迁移进来,CSDN这个网站是越来越傻逼了.最终选择了hexo-theme-matery主题, 但最艰难的博文迁移过程算是完成了,但仍然有很大瑕疵..
2019-04-18 tabris
  目录