點這裏: https://github.com/settings/tokens
權限保持默認就行,token必定要保存好,等會要在Travis CI裏用,它只會顯示一次。node
點這裏: https://travis-ci.org/
進入設置(Settings),打開你要自動編譯的公開倉庫。git
而後點擊按鈕旁邊的Settings,找到環境變量(Environment Variables)github
左側隨便填個名字。若是你怕出錯啥的就跟我同樣填Travis,右側的密碼同樣的東西填剛剛咱們獲取到的GitHub_Tokennpm
個人是:1a5xxxx0cb0b3xxxxxx631f03c7xxxx73020fb6dgulp
這個很重要的!hexo
.travis.yml
的文件,用記事本打開就能夠。language: node_js node_js: stable cache: directories: - node_modules branches: only: - hexo before_install: - npm install -g hexo-cli # S: Build Lifecycle install: - npm install - npm install hexo-deployer-git --save # before_script: # - npm install -g gulp script: - hexo clean - hexo generate after_script: # - cd ./public # - git init - git config user.name "gattia" - git config user.email "gattia.su@gmail.com" # - git add . # - git commit -m "Update docs" # - git push --force --quiet "${Travis}@${GH_REF}" master:master - sed -i "s/Travis/${Travis}/g" ./_config.yml - hexo deploy
有沒有感受Travis CI就像是一臺遠程計算機?ui
將 .travis.yml
與 _config.yml
放在一塊兒。spa
還要修改下_config.yml文件的deploy節點:.net
# 修改前 deploy: - type: git repo: git@github.com:SylvesterLi/HiTravi.git branch: master
# 修改後 deploy: - type: git # 下方的gh_token會被.travis.yml中sed命令替換 repo: https://Travis@github.com/SylvesterLi/HiTravi.git branch: master
若是有其餘問題,能夠參考一下個人GitHub中HiTravi倉庫,這個倉庫Travis CI運行正常.3d
一開始我也不知道怎麼配置Travis CI,參考了好多文章,各有各的寫法,可是我老是不成功。後來按照其中一個完完整整的作完就成功了。
能夠參考這篇: http://www.javashuo.com/article/p-urxtexke-cd.html
這篇講的仍是比較清楚的,就是sed那個地方我一開始沒看懂。
出於我的習慣,我不肯意把編譯出來的文件放在master分支。我想把博客源代碼放在master,編譯文件放在gh-pages分支。因此在
branches: only: - hexo
跟另外一篇博客中的
# - git add . # - git commit -m "Update docs" # - git push --force --quiet "${Travis}@${GH_REF}" master:master
混亂了半天。
後來作完才明白,想監視哪一個分支就設置only:這裏的,想推送到哪,就去設置_config.yml中的deploy:branch。
說到這裏得提一下昨天查錯的過程。
第一次提交上去的時候我覺得成功了:
結果去GitHub一查,倉庫沒變化,翻到下面看到:
覺得是網址錯了仍是分支名錯了,仍是沒權限訪問:
直到我發現,倉庫名錯了哈哈哈哈,而後改了仍是訪問不到:
索性就改了sed命令那個教程:
以前個人Repo名字叫HiTravis,當sed命令去替換_config.yml文件裏的Travis時順手就把我倉庫的名字給替換掉了。因此我趕忙改了個倉庫名。
大功告成!!