Hexo自动构建-基于Github和TravisCI

基于Github和TravisCI

都是墙外工具,可能速度偏慢;
在部署过程会有不同的方法:使用hexo d进行部署和在public文件夹下直接push到GithubPage仓库;
Coding的请参考这篇>>

Github建立个人博客

下面步骤也是最简单的在Github上面搭建博客的流程:
1.注册Github账号,创建与用户名同名的仓库名;
2.生成Git密钥对,并保证能够连通[email protected];参考链接
3.PC端打开命令行工具(定位到博客根目录)分别运行以下命令:

npm install -g hexo --save  #hexo基于node.js,需提前安装,此步骤是安装hexo;

npm install -g hexo-cli --save  #可选择安装,非必须;

hexo init   #初始化;

hexo new    #创建一篇新文章,改文章会存放在`source-->_posts`文件夹之下;

hexo generate   #构建博客,同hexo g

npm install -g hexo-depoyer #安装hexo部署器

# 修改hexo配置文件`_config.yml`,添加如下代码:
deploy:
  type: git
  repo:
    coding: [email protected]:username/username.git

hexo deploy #部署博客,同hexo d

hexo server #开启本地服务

进入username.github.io查看博客情况;

参考资料>>

配置TravisCI

1.使用Github账号授权登录;
2.找到并开启username的仓库

Hexo自动构建-基于Github和TravisCI_第1张图片
找到并开启username的仓库

3.授权:
a.Github设置中创建Personal access tokens:
Hexo自动构建-基于Github和TravisCI_第2张图片
Github设置中创建Personal access tokens:1

Hexo自动构建-基于Github和TravisCI_第3张图片
Github设置中创建Personal access tokens:1

Hexo自动构建-基于Github和TravisCI_第4张图片
Github设置中创建Personal access tokens:1

b.将token添加到TravisCI的对应项目中:
Hexo自动构建-基于Github和TravisCI_第5张图片
将token添加到TravisCI的对应项目中:

4.配置TravisCI配置文件 .travis.yml,添加如下代码:

language: node_js
node_js: stable

# S: Build Lifecycle
install:
#  - npm install -g hexo
#  - npm install -g hexo-deploy-git
  - npm install


before_script:
 # - npm install -g gulp
#   - npm install -g hexo
   - hexo -v

script:
  - hexo g

after_script:
  - cd ./public
  - git init
  - git config user.name "yincheng0807"
  - git config user.email "[email protected]"
  - git add .
  - git commit -m "Update blog!"
  - git push --force --quiet "https://${GITHUB_TOKEN}@${GH_REF}" master:master  #GITHUB_TOKEN为在TravisCI中添加的来自Github的授权Token,见上一步

branches:
  only:
    - hexo

# 创建全局变量,与GithubPage仓库ssh地址一致
env:
 global:
   - GH_REF: [email protected]:yincheng0807/yincheng0807.github.io.git

关联githubPage仓库:

1.删除博客源文件根目录下的.git文件夹,这个文件夹是hexo的.git
2.打开Git Bash,执行:

git init;
git remote add origin 
[email protected]:username/username.git

此时位于master分支

在pages仓库创建博客源文件分支hexo:

1.创建hexo分支:

git checkout -b hexo;

git pull origin hexo;

git add .;

git commit -am "test";

git push origin hexo;

至此push到远成仓库之后就能自动触发TravisCI;

参考资料1>>
参考资料2>>
参考资料3>>

p.s.另一种方式的构建,替换配置TravisCI第四步中代码:

language: node_js
branches:
  only:
  - hexo #源码分支名称
before_install:
- npm install -g hexo
- npm install -g hexo-cli
before_script:
- git config --global user.name 'yourname'
- git config --global user.email 'youremail'
- sed -i'' "[email protected]:/.git~https://${REPO_TOKEN}:[email protected]//.git~" _config.yml
install:
- npm install
script:
- hexo clean
- hexo generate
after_success:
- hexo deploy

原文地址>>

你可能感兴趣的:(Hexo自动构建-基于Github和TravisCI)