开发自己的app之 - 如何构建自己github的release仓库

文章目录

1.修改package.json中的版本号

复制代码
{
  "name": "TimeTracker",
  "version": "1.2.0",
  ....
}

将版本号version修改为新的版本号。最终由github自己构建的exe文件会议这里的 version: "1.2.0" 这个代号作为命名。

2.打tag,push

假设这里已经把代码给写好了,准备push到release的新tag

复制代码
git tag v1.2.0
# 一般情况下,v1表示兼容性,新版本是否兼容旧版本,如果不兼容,就是v2了。v1.2是指开发了新特性。v1.2.1是指兼容旧版本的新特性,并修复了v1.2的bug

git push origin v1.2.0
## 这里的origin是准备push的仓库名字

3.到origin对应的远程仓库下查看release

此时如果一切没有问题,github已经在自己构建新的release并生成 exe 文件用来发布了。

那么,github 是如何得知如何构建的呢?

答案藏在 .github/workflows/build.yml中。

这份文件会告诉 github 如何在接收到 构建的指令(git push origin v1.2.0)后构建新的版本。

一份示例的build.yml:

复制代码
name: Release Build

on:
  push:
    tags:
      - 'v*'  # 监听所有以 v 开头的标签,如 v1.0.0、v2.1.3

permissions:
  contents: write

jobs:
  build:
    runs-on: windows-latest

    steps:
      - name: 检出代码
        uses: actions/checkout@v4

      - name: 设置 Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: 安装依赖
        run: npm install

      - name: 构建项目
        run: npm run build:win

      - name: 创建 Release
        uses: softprops/action-gh-release@v1
        with:
          files: release/*
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

4.如果发现版本错了怎么办?

可以直接到 github 仓库对应的release下删除后,重新git push origin v1.2.0,让github重新构建。(需要是一个自己有管理权的仓库哦!)

复制代码
git tag -d v1.2.0 #删除本地tag
git push origin --delete v1.2.0 # 删除远程仓库的tag

## 修改修改..
## 重新push
git tag v1.2.0
git push origin v1.2.0
相关推荐
csdn_aspnet12 小时前
开源项目在GitHub上的破圈方法论,解析Star增长、Issue响应、Contributor引导等真实运营技巧
开源·github·issue·readme·star
uhakadotcom13 小时前
Scrapy-Redis 里面提供哪些即开即用的功能能力模块
前端·面试·github
大意的百合13 小时前
Electron 应用如何上架微软商店:从 MSIX 打包到商店提交
javascript·microsoft·electron
诚信定制83913 小时前
GitHub 三大协作利器:Topics标签、Discussions与Actions Marketplace
github
欣慰的猫咪15 小时前
GitHub Copilot 正式成为 JetBrains AI Assistant 的原生默认 Agent 之一
人工智能·github·copilot
鲸~屿15 小时前
Git上传本地文件到GitHub教学指南
git·github
码流怪侠1 天前
【GitHub】Strix 深度解析:开源 AI 渗透测试工具的架构、原理与实战
github·agent·ai编程
OpenTiny社区1 天前
Coding Agent 到底是怎么工作的,它又为什么会在复杂代码库里失真?
前端·github·agent
王飞飞不会飞1 天前
macbert训练过程记录
人工智能·github