File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 4646- ** 后续防范** :含 test-electron 的扩展,eslint ignores 必须含 ` .vscode-test/** ` (及 ` out/** ` 、` dist/** ` 、` *.vsix ` );CI 因不缓存该目录可能不暴露,但本地必现——本地与 CI 环境差异需警惕。
4747- ** 同类问题影响** :所有跑过 test-electron 的本地环境的 eslint/其他静态分析工具。
4848
49+ ## #6 vscode.git 公开 API add() 须传绝对路径
50+
51+ - ** 表因** :调用 ` Repository.add(['README.md']) ` (相对路径)无效或误加文件;CommitService 初期也曾困惑路径语义。
52+ - ** 根因** :` extensions/git/src/api/api1.ts ` 的 ` add(paths) ` 实现为 ` paths.map(p => Uri.file(p)) ` ——` Uri.file() ` 要求** 绝对路径** ;相对路径会被包装成畸形 Uri,内部 ` path.relative(root, ...) ` 计算错误。` revert ` /` clean ` /` restore ` 同理。
53+ - ** 处理方式** :CommitService 始终传 ` ChangeItem.uri.fsPath ` (绝对)。
54+ - ** 后续防范** :消费 vscode.git 公开 API 的路径类方法(add/revert/clean/restore)一律传绝对 fsPath;已加集成测试 ` tests/suite/commit-flow.test.js ` 守护。
55+ - ** 同类问题影响** :所有消费 vscode.git API 做 stage/revert 的扩展;git CLI 本身接受相对路径,但** 公开 API 层不接受** ,二者语义差异易踩。
56+
57+
Original file line number Diff line number Diff line change 44
55## [ Unreleased]
66
7+ ### Added — M2 Commit 提交窗口(0.3.0)
8+
9+ - Commit 提交窗口(WebviewView 自绘 IDEA 风格):活动 changelist 文件勾选 + 多行 Commit Message 编辑器 + Amend / Signed-off-by / 跳过 Git hooks 选项 + Commit / Commit and Push 按钮。
10+ - Conventional Commits 实时校验:` engine/commit/conventional-linter ` 纯函数 + webview 指示器(ok/warning/error)+ 内置 ` ConventionalCommitCheck ` Checkin hook(pipeline 内阻断不合规提交)。
11+ - ` CommitPipeline ` 责任链接入提交流程(对齐 IDEA ` CheckinHandler ` :校验 → stage → hook 链 → commit → 可选 push)。
12+ - AI 接缝 5 接口 + Null 实现注入 CommitService(` ILlmProvider ` / ` ICommitMessageProvider ` / ` IPreCommitInspector ` / ` IChangelistGrouper ` / ` IConflictResolver ` ),M5 替换为真实实现。
13+ - 最近提交消息复用(` workspaceState ` 持久化,webview 一键填入)。
14+ - 真实 git 提交闭环集成测试(fixture 仓库 + ` vscode.git ` add/commit + git log 校验)。
15+
716### Added — M1 Git Adapter + 多 changelist Changes(0.2.0)
817
918- Git Adapter:` GitRepositoryService ` 封装内置 vscode.git 稳定 ` Repository ` API(读取 workingTreeChanges/untrackedChanges、状态变更事件、diff/toGitUri 委托)。
You can’t perform that action at this time.
0 commit comments