make-update

离线增量打包工具 (Git → ZIP,保留目录结构)

启动插件
1 个评分 0 ★★★★★
用户 17 位
开发者 杰克
版本 1.2.2
大小 82.73 KB 离线下载

详情介绍

# 增量打包工具

uTools 插件:根据 Git 修订号生成离线增量更新包,附带删除清单与回滚指引,供无法直接访问 Git 服务器的离线机使用。

## 适用场景

- 生产或离线环境无法拉取代码,需要以增量包形式分发变更
- 只想要差异文件,不想搬运完整仓库
- 需要同步删除已废弃文件,而不是只覆盖新增与修改

## 功能

- **增量打包**:对比基准修订号与当前 HEAD,把变更文件打包为 zip,内容直接取自 Git 对象,工作区未提交的改动不会混入包内
- **删除清单**:自动生成被删除文件清单,并输出 Windows(.bat)与 macOS/Linux(.sh)删除脚本,脚本带项目目录校验和确认提示
- **回滚指引**:打包结果内附回滚方案(git reset 或目录备份恢复),出问题可一键还原
- **批量打包**:多个任务一键排队执行,可指定统一输出目录
- **项目记忆**:自动记忆最近使用的项目目录(最多 20 个),下拉即选;支持按名称/路径实时过滤、备注项目名、一键清理失效记录
- **快捷日期基准**:3/7/14/30 天前一键选择,或自定义日期(flatpickr)
- **基准修订号回显**:填入修订号后自动显示该次提交的提交说明,一眼确认基准内容
- **历史记录**:保留最近 50 条打包配置,可一键回填、删除、打开产物目录
- **环境检测**:打包前检测 Node.js、Git、PowerShell(macOS 检测 zip)是否就绪
- **提交记录选择**:下拉展示最近提交的修订号与提交信息,免去手动复制
- **跨平台**:Windows、macOS、Linux 均可生成与部署
- **界面**:深色/浅色主题切换,双列等高布局;输入框支持一键清空

## 使用

1. 在 uTools 输入框唤出「打包更新」
2. 选择项目目录(Git 仓库;常用项目会自动记忆,下次下拉即选)
3. 选择或输入基准修订号(增量包将包含该修订号之后的所有变更;可下拉选最近提交、或按 3/7/14/30 天前/自定义日期快速选择)
4. 可选:填写排除项,按部分匹配过滤目录或文件(如 `node_modules`)
5. 执行打包,产物生成在项目根目录(或批量模式下指定的输出目录)

## 产物说明

| 文件 | 用途 |
| --- | --- |
| `<项目名>_update_<时间戳>.zip` | 增量包,含变更文件与 `update_info.txt` |
| `<项目名>_delete_<时间戳>.txt` | 被删除文件清单 |
| `<项目名>_delete_<时间戳>.bat` / `.sh` | 删除脚本,执行后同步清理离线机上的废弃文件 |

增量包内的文件均取自 Git 对象(HEAD),与 diff 清单严格一致;无任何变更时插件会直接提示,不生成空包。

## 离线机部署

部署流程(备份、解压覆盖、核对删除清单、执行删除脚本、回滚方案)面向离线机操作人员,见项目内 `DEPLOY.md`。

## 环境要求

- uTools
- Node.js
- Git
- Windows:PowerShell 5.1 及以上;macOS/Linux:`zip` 命令

## 注意事项

- 基准修订号必须是项目仓库中真实存在的提交,否则会直接报错而不是生成空包
- 排除项为部分匹配:排除 `src` 会同时过滤 `src2`、`my-src` 等路径
- 增量包内容以基准修订号到当前 HEAD 的提交为准,未提交的本地改动不会被打包
- 项目目录变更后基准修订号会自动清空(旧基准对新路径无效,避免误打包)