travis-ci自动部署
本文似乎过时了
获取Token
登陆Github,然后获取token,网上教程一堆。省略
配置Token
travis-ci
上登陆github
,然后开启要监控的仓库,在仓库上配置获取到的Token
过程省略,网上一大堆.
hexo d部署地址和.travis.yml书写的问题
Github Pages
有两种:
- 一种是基于用户的
Github Pages
:- 这个仓库的名称为
用户名.
github.io`, - 每个用户只能创建一个
- 这个
Github pages
的域名为:https://
用户名.github.io/
- 这个
Github pages
默认部署在master
分支上.
- 这个仓库的名称为
- 一种是基于仓库的
Github Pages
:- 这仓库名可以随意,
- 你可以创建多个仓库,然后在多个仓库上开启
Github Pages.
- 这种
Github Pages
的域名为:https://
用户名.github.io/
仓库名/` - 这种
GitHub Pages
默认部署在gh-pages
分支上
基于项目的Github Pages的写法
Github允许在每个项目的gh-pages分支上开启GitHub Pages,将,
站点配置文件中仓库地址的写法
1 | # Deployment |
其中gh_token
是一个占位符,方便后续使用真正的token填充。你可换成其他字符。
正确的.travis.yml
travis-ci
中使用原来的hexo d
进行发布,.travis.yml
书写如下:
1 | language: node_js |
注意
1 | sed -i "s/gh_token/${GH_TOKEN}/g" ./_config.yml |
GH_TOKEN
就是你设置的token的名字${GH_TOKEN}
就是取出变量的值
整个命令的意思,就是将gh_token
替换成GH_TOKEN
这个变量的值,也就是替换成真正的token
推送到master分支
1 | git add |
基于xxxx.github.io仓库的配置
xxxx.github.io
是基于用户的github pages
,只可以创建一份.并且必须构建在master
分支上.
配置文件需要修改
站点配置文件中仓库地址的写法
1 | # Deployment |
正确的.travis.yml
由于github pages已经放在master分支上了,我们必须使用其他分支来放博客源码,我这里创建了一个src
分支来存放博客源码
这样就需要修改travis-ci
的配置文件.travis.yml
,在src分支上有变化时,部署博客.
1 | language: node_js |
推送到src分支
1 | git add |