[开源考试系统前端]使用git进行版本控制以及CI/CD部署(三)

234 阅读2分钟

git准备

下载GithubDesktop

desktop.github.com/

了解git基本语法

git-scm.com/

基本方法

  1. git clone [http路径]
  2. git remote add origin [git路径]
  3. git pull origin [分支名称]
  4. git checkout -b [branch名称]
  5. git add .
  6. git commit -m '提交信息'
  7. git push origin [提交分支名称]
  8. git push origin [新分支名称]:[新分支名称]
  9. git merge/ git rebase 合并分支 如果使用github desktop就通过可视化的提交 然后填写版本号以及提交信息就可以;使用git bash就通过上述的基本方法进行添加至暂存区->提交->push;多人开发就是一开始就pull拉取项目,之后完成自己的业务代码就push。

CI/CD 配置步骤

  1. 配置github自动化文件,以yml结尾
  2. 在对应的服务器或者npm的个人账户里获取密钥
  3. 将密钥配置在仓库的settings里

创建文件夹及.yml文件

文件配置

name: 打包应用并上传腾讯云

on:
  push:
    branches:
      - main

jobs:
  build:
    # runs-on 指定job任务运行所需要的虚拟机环境(必填字段)
    runs-on: ubuntu-latest
    steps:
      # 获取源码
      - name: 迁出代码
        # 使用action库  actions/checkout获取源码
        uses: actions/checkout@master

      # 安装Node10
      - name: 安装node.js
        # 使用action库  actions/setup-node安装node
        uses: actions/setup-node@v1
        with:
          node-version: 14.17.0

      # 安装依赖
      - name: 安装依赖
        run: yarn

      # 打包
      - name: 打包
        run: yarn build

      # 上传阿里云
      - name: 发布到腾讯云
        uses: easingthemes/ssh-deploy@v2.1.1
        env:
          # 私钥
          SSH_PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }}
          # scp参数
          ARGS: '-avzr --delete'
          # 源目录
          SOURCE: 'dist'
          # 服务器ip:换成你的服务器IP
          REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
          # 用户
          REMOTE_USER: 'root'
          # 目标地址
          TARGET: '/www/wwwroot/'
          

获取目标地址的密钥

github配置

github的密钥字段要和.yml的配置文件的字段一致这样才能成功,npm包的CI/CD和上述过程基本一致,如果有需要npm自动发布至npm仓库的配置文件可留言,已经过测试可以实现上传github自动发布至npm仓库。