1. .yml文件
new workflow -> set up a workflow yourself
.yml文件代码
# 该workflow的名称,可以随意填写
name: Build And Deploy To Github Pages
# workflow的触发事件,这里代表master分支的push事件触发
on:
push:
branches: [ master ]
# 任务
jobs:
# build-and-deploy 为任务的ID
build-and-deploy:
# 运行所需要的环境
runs-on: ubuntu-latest
steps:
# 步骤名
- name: Checkout
# 使用的actions脚本,这里是官方提供的获取源码脚本
uses: actions/checkout@v2.3.1
# 这个为使用 JamesIves/github-pages-deploy-action脚本所需要的配置
with:
persist-credentials: false
# 执行npm脚本打包项目
- name: Install and Build
run: |
npm install
npm run build
# 执行JamesIves/github-pages-deploy-action将项目发布到Github Pages
- name: Deploy
uses: JamesIves/github-pages-deploy-action@3.7.1
with:
# 该workflow需要操作repo,因此需要一个密钥,下面会讲到如何获取这个密钥
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
# 发布到的分支
BRANCH: gh-pages
# 要发布的文件夹
FOLDER: dist
theme: minima
注意最后一行,网上各大教程说的选择主题,现在已经改成直接配置在.yml文件里了(不配置主题可能导致最终部署的页面404)
创建密钥
关于密钥(应该不搞这个密钥也可以)
进入Github的Settings中github.com/settings/,依次点击Developer settings、Personal access tokens。然后点击Generate new token创建。因为要操作仓库,所以需要勾选repo权限。
具体请参考:创建个人访问令牌
请及时保存生成的密钥 (离开密钥页面再进去就看不到了)
将密钥存储到Github仓库
首先创建一个Github仓库(或者使用已有仓库),然后到仓库的Settings/Secret下,点击New repository secret将刚才保存的密钥保存,并命名为ACCESS_TOKEN(注意,如果这里的命名更改了,前面的yml文件中的${{ secrets.ACCESS_TOKEN }}也要更改)
2.vue.config.js中要注意的点
publicpath需要用相对路径
3.package.json中要注意的的点
https://【github名称】.github.io/【仓库名称】
4.提交代码测试
git push后,可以看到正在执行的workflows 和部署步骤
5.部署成功
成功后在仓库的setting->pages里
或者在
点击链接可以访问到页面
注意点
1.取消部署
尝试了一下取消github pages站点
取消以后每次推送代码后, 将不会进行页面构建和部署的这个工作流
需要重新运行一个pages build and deployment工作流,之后的每次提交代码都会正常自动执行此工作流
2.代码修改提交
修改代码以后需要打包以后提交,线上页面才会有变化。(待解决)