安装必要组件
- 执行命令
brew install ruby
brew install node
gem install travis
npm install hexo-deployer-git --save
- 创建库
github 创建 repo
规定用户名.github.io
- 修改hexo根目录下的config文件,2,3步如果前面的博客里做过就不用做了
deploy:
type: git
repository:
github: git@github.com:zelsonia/zelsonia.github.io.git
coding: git@git.coding.net:zelsonia/zelsonia.git
branch: master
ps: github coding js共存, config里的url,root可以都注释了,库名要按照标准建。
github仓库建的是 用户名.github.io。 coding则是 要建 用户名 就是纯用户名作仓库。
这样才有用 才能直接访问
https://zelsonia.coding.me/zelsonia/
- https://travis-ci.orgtravis官网用github账号登录,点account,打开io那个库,然后点旁边的设置图标。
开启Build only if .travis.yml is present这一项.
5.创建主要的执行travis的文件
网站根目录创建
touch .travis.yml
- 接下去有两种方法,我们选择第一种,一种是用我们自己的id_rsa来制作,另一种是github上生成access token。
mkdir .travis
cd 博客项目文件夹根目录/.travis
$ cp ~/.ssh/id_rsa ./
$ cd 博客项目文件夹根目录/.travis
$ touch ssh_config
创建 ssh_config 文件
sshconfig里加
Host github.com
User git
StrictHostKeyChecking no
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
travis login --auto
travis encrypt-file id_rsa --add
rm id_rsa
登录,加密,删掉我们的id_rsa
如果直接加密不行 就先remote加上github的仓库
回到根目录
rm -rf .git
git init
git remote add origin git@github.com:zelsonia/zelsonia.github.io.git
到这边再回到travis里执行加密可以了
- 打开Travis配置文件.travis.yml,添加如下信息,用的next theme所以加了些额外的:
language: node_js
node_js:
- '4'
branches:
only:
- dev
before_install:
- export TZ='Asia/Shanghai'
# 解密id_rsa_blog.enc 输出到.ssh/文件夹下,命名为id_rsa
- openssl aes-256-cbc -K $encrypted_xxxxxx_key -iv $encrypted_xxxxxx_iv -in .travis/id_rsa.enc -out ~/.ssh/id_rsa -d
# 设置id_rsa文件权限
- chmod 600 ~/.ssh/id_rsa
# 添加ssh密钥
- eval $(ssh-agent)
- ssh-add ~/.ssh/id_rsa
# 添加ssh配置文件
- cp .travis/ssh_config ~/.ssh/config
- git config --global user.name "zelsonia"
- git config --global user.email xxxxxx@qq.com
install:
- npm install
# ERROR Deployer not found: git 所以要加上
- npm install --save hexo-deployer-git
- npm install --save hexo-util
script:
- hexo clean
- hexo g
after_success:
- hexo deploy
切到上面填的分支,提交
git push origin dev:dev
travis官网看进度,如果没报错 就行啦coding一起deploy 就是config上面deploy加上coding的那行