mirror of https://github.com/allinssl/allinssl
136 lines
5.3 KiB
Markdown
136 lines
5.3 KiB
Markdown
# 更新日志
|
||
|
||
## [3.1.0] - 2023-XX-XX
|
||
|
||
### 新增
|
||
|
||
- **本地同步目标路径增强**:
|
||
- `LocalSyncConfig.target` 现在支持字符串数组,可以将一个源路径同步到多个目标路径
|
||
- 添加了文件分发功能,一次配置可以将文件复制到多个目标
|
||
- 优化了目标路径配置验证,支持数组格式
|
||
- 更新了相关文档和示例
|
||
|
||
- **Git项目管理增强**:
|
||
- 添加了 `GitProjectConfig.discardChanges` 选项,允许自动丢弃未提交的更改
|
||
- 当设置为 `true` 时,会在拉取前自动执行 `git checkout -- .` 和 `git clean -fd`
|
||
- 增强了错误处理,可以处理因未提交更改导致的拉取失败
|
||
- 添加了相关日志,提供更清晰的操作过程
|
||
|
||
### 改进
|
||
|
||
- 优化了本地同步功能的代码结构,将目标路径统一处理为数组
|
||
- 更新了 README 文档,添加了使用 target 数组的示例和 discardChanges 选项的说明
|
||
- 完善了类型定义,提供更好的 TypeScript 支持
|
||
- 改进了 Git 项目管理的错误处理,提供更友好的错误信息和恢复机制
|
||
|
||
## [3.0.0] - 2023-XX-XX
|
||
|
||
### 重大变更
|
||
|
||
- **Git 项目存储路径统一化**:
|
||
- 所有 Git 项目都集中存放在工作区根目录的 `.sync-git` 目录下
|
||
- `GitProjectConfig.targetDir` 现在相对于 `.sync-git` 目录,而非工作区根目录
|
||
- `AutoCommitConfig` 中的项目路径也相对于 `.sync-git` 目录
|
||
- 更新了相关路径计算逻辑和错误处理
|
||
- 提供更清晰的路径解析日志
|
||
|
||
- **智能自动提交完全分离**:
|
||
- 完全移除了 `GitProjectAutoCommitConfig` 与 Git 项目配置的关联
|
||
- 将 `GitProjectAutoCommitConfig` 标记为废弃
|
||
- 自动提交模块现在完全依赖 `AutoCommitConfig` 配置
|
||
|
||
- **任务执行机制调整**:
|
||
- 所有任务现在都在构建完成后的 `closeBundle` 钩子中执行
|
||
- 移除了 `buildStart` 和 `buildEnd` 阶段的分离执行
|
||
- 按固定顺序依次执行:Git项目管理 → 本地文件同步 → 自动提交
|
||
- 前一任务出错会中止后续任务执行
|
||
|
||
### 新增
|
||
|
||
- **工作区根目录检测**:
|
||
- 增强了工作区根目录检测功能,支持多种 monorepo 工具:
|
||
- Turborepo (turbo.json)
|
||
- PNPM Workspaces (pnpm-workspace.yaml)
|
||
- Yarn/NPM Workspaces (package.json 中的 workspaces 字段)
|
||
- 所有路径计算现在基于工作区根目录,而非 Vite 项目根目录
|
||
- 支持 monorepo 中的子项目使用相同配置
|
||
|
||
### 改进
|
||
|
||
- **配置验证增强**:
|
||
- 增加了对自动提交配置中路径的验证,确保使用相对路径
|
||
- 优化了错误消息,提供更具体的问题描述和解决建议
|
||
- 确保 Git 项目管理必须成功,失败时会中止后续任务
|
||
|
||
- **文档更新**:
|
||
- 更新了 README,详细说明 Git 项目路径和工作区检测
|
||
- 添加了更多配置示例,突出显示路径关系
|
||
- 更新了配置表格,明确标注任务执行顺序
|
||
- 完善了工作原理部分,说明任务执行机制
|
||
|
||
### 修复
|
||
|
||
- 修复了多个路径计算问题,确保路径解析一致性
|
||
- 修正了自动提交模块中潜在的路径解析错误
|
||
- 优化了 Git 项目管理错误处理逻辑
|
||
|
||
## [2.1.0] - 2023-XX-XX
|
||
|
||
### 新增
|
||
|
||
- **工作区根目录检测**:
|
||
- 自动检测Turborepo/PNPM/Yarn/NPM工作区根目录
|
||
- 所有路径(Git项目、文件同步、日志等)基于工作区根目录计算
|
||
- 支持monorepo中的多个子项目共享配置
|
||
|
||
### 改进
|
||
|
||
- 更新了日志系统,路径计算现基于工作区根目录
|
||
- 改进了路径解析逻辑,支持绝对路径和相对路径
|
||
- 添加了工作区检测日志,方便调试和确认
|
||
|
||
## [2.0.0] - 2023-XX-XX
|
||
|
||
### 重大变更
|
||
|
||
- **插件架构调整**:移除任务编排系统,改为基于Vite构建钩子的分阶段执行
|
||
- 移除了 `taskOrder` 配置字段
|
||
- Git项目管理现在在编译前阶段 (`buildStart`钩子) 执行
|
||
- 本地文件同步和自动提交在编译后阶段 (`buildEnd`钩子) 执行
|
||
- 修改了插件主要流程,不再需要手动指定任务顺序
|
||
|
||
- **智能自动提交模块独立化**:
|
||
- 从 `GitProjectConfig` 中移除了 `autoCommit` 字段
|
||
- 创建了独立的 `AutoCommitConfig` 配置接口
|
||
- 更新了配置验证逻辑,适应新的数据结构
|
||
- 自动提交现在作为完全独立的模块运行
|
||
|
||
### 新增
|
||
|
||
- 基于Vite构建周期的分阶段执行机制:
|
||
- 更合理的任务执行顺序:Git项目更新 → 编译 → 文件同步 → 自动提交
|
||
- 更明确的错误处理策略:编译前错误会终止构建,编译后错误可选择忽略
|
||
|
||
- 为 `AutoCommitConfig` 添加了新的配置选项:
|
||
- `enableSharedCommits`: 控制是否启用跨项目的共享提交信息 (默认: true)
|
||
- `insertSeparator`: 控制是否在提交后插入分隔符 (默认: true)
|
||
|
||
- 自动提交项目现可独立指定分支,与 Git 项目管理分支分离
|
||
|
||
### 改进
|
||
|
||
- 代码结构更加清晰,各模块职责明确
|
||
- 更新了文档,清晰说明各任务的执行阶段
|
||
- 优化了配置验证逻辑,提供更友好的错误信息
|
||
- 改进了自动提交流程中的共享提交信息机制
|
||
- 更新了配置表格,添加了执行阶段说明
|
||
- 添加了工作流程图,帮助用户理解插件执行机制
|
||
|
||
### 修复
|
||
|
||
- 修复了类型定义中的问题,确保类型安全
|
||
- 修正了一些可能导致异常的边缘情况
|
||
|
||
## [1.2.0] - 2023-XX-XX
|
||
|
||
...之前的更新日志... |