版本号体系落地:AssemblyInfo 固定三段式 1.0.3 为唯一事实源(禁用 1.0.* 自动号);关于软件运行时读程序集版本;setup.iss 带版本号并纳入 git;新增 tools\递增版本号.ps1 一键递增三处同步(已自测往返);技能写入版本号铁律(每次发版必须递增)

This commit is contained in:
dqb-dev
2026-10-02 01:49:05 +08:00
parent c1849f97d5
commit 2f0ee71093
5 changed files with 78 additions and 8 deletions
@@ -59,6 +59,12 @@ description: SharpDevelop 5.x WinForms 设计器**全部工具箱**(5 分类 8
- **依赖清单**:所需引用的资源文件(图标/图片/resx)、组件库与依赖程序集(Designer.cs 用到增强控件时,同一次改动先写 csproj 引用,见第 3 条);
- **数据接口**:窗口与其他系统模块(主窗口/数据库/停靠布局/外部进程)的数据交互方式与调用入口。
窗口一律采用双文件结构:`窗口名.Designer.cs`(纯布局与属性,SD 设计器能正确打开并继续编辑微调)+ `窗口名.cs`(交互逻辑与业务代码),Designer.cs 里绝不写业务代码;窗口文件记得同步注册进 csproj(Compile Include + Designer.cs 加 `<DependentUpon>`)。
7. **版本号铁律(用户强制 2026-10-01):每次发版必须递增版本号**。每次打安装包/发 Gitea Release 前,必须先跑 `tools\递增版本号.ps1`(默认修订号 +1,如 1.0.3→1.0.4;大改动可传参指定如 1.1.0)。规则:
- **唯一事实源** = `成套报价软件\Properties\AssemblyInfo.cs` 的 `AssemblyVersion`(固定三段式 `主.次.修订.0`,**禁用 `1.0.*` 自动号**——每次编译都变,无法对应发布的安装包);
- 「关于软件」窗口运行时自动读程序集版本显示(不在 Designer 写死);
- `release\成套报价软件\setup.iss` 的 `AppVersion` 与 `OutputBaseFilename=成套报价软件_Setup_版本` 由脚本同步;
- Gitea Release 的 tag 与版本号一致(如 `v1.0.4`);
- 发版链固定为:递增版本号 → 编译 → make_package → ISCC → 更新包 → git 提交推送 → Release。跳过递增 = 两个不同功能的安装包同版本号,用户分不清、回滚排障全乱。
## 一、项目前提(缺一不可)