feat(Release): Hyper Git v0.0.4 首个完整版本合入 master(IDEA Git 工具窗口全量复刻 + AI 接缝) - #19
Merged
Conversation
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* feat(Scaffold): 初始化 M0 工程脚手架(pnpm+esbuild+TS strict+ESLint9); 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Core): 搭建源码分层骨架与单元/集成测试(engine/adapter/agent/ui); 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * ci(CICD): 新增 CI 流水线(测试矩阵+打包 vsix+双市场发布); 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * docs(Project): 新增 README/CHANGELOG 并同步知识索引与 Issue 记录; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * ci(CICD): 升级 CI Node 至 22(pnpm 11.9 需 ≥22.13,旧版 Node 缺 node:sqlite); 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * ci(CICD): test job 在集成测试前构建 dist/extension.js; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* docs(Research): 持久化全链路调研报告与工程方案; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * docs(Agents): 知识索引补充 docs 链接并记录 CI Issue 经验; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* feat(M1): Git Adapter + 多 changelist Changes 树视图与命令; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * test(M1): 新增 changelist-grouper/git-status-map 单测并扩展集成测试; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Manifest): M1 命令/菜单/viewsWelcome 并升级版本至 0.2.0; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * chore(Config): vsix 排除 docs、eslint 忽略 .vscode-test 并记录 Issue/CHANGELOG; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* feat(M2): Commit 提交窗口(WebviewView 自绘)+CommitPipeline+AI 接缝; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * test(M2): CC linter 单测与真实 git 提交闭环集成测试; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Manifest): 新增 Commit webview 视图与提交命令并升级至 0.3.0; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * docs(M2): CHANGELOG 记录 M2 交付并补充 vscode.git 路径语义 Issue; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* fix(Review): 修复 M0/M1/M2 审查发现的正确性问题(订阅泄漏/仓库选取/indexChanges/commit 语义/push 警告/linter 等); 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * test(Review): 补齐 ConventionalCommitCheck/CommitService.executeCommit/git-status-map 全量/amend 集成; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * chore(Review): 版本 0.3.1 + CHANGELOG 记录审查修复; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* feat(M3): Log/Branches TreeView + Blame + Show History; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Manifest): M3 新增 log/branches 视图与 13 个历史命令及菜单并升级至 0.4.0; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * test/docs(M3): 集成测试覆盖 M3 命令并记录 CHANGELOG; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* feat(M4): Stash 视图与操作(create/apply/pop/drop)+ stash-backed Shelf MVP; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Manifest): M4 新增 stash 视图与 4 个 stash 命令及菜单并升级至 0.5.0; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * test/docs(M4): 集成测试覆盖 M4 命令并记录 CHANGELOG + API 限制说明; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
* docs(M0-M5): 新增实施状态总览并同步索引与 README 发布段落; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * fix(Review): M3/M4 审查修复(stash 枚举 block/Disposable 泄漏/防抖/blame 守卫)+ 补 Discard/Pull/Push/Fetch 与 ChangelistRegistry 测试; 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * chore(Release): v0.0.1-rc.1 首发候选(版本+PNG 图标+CI --pre-release+Dependabot+CHANGELOG); 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
…sh-list/ignore/compare/reword 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
…-way diff 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
…15) * feat(Parity-Batch5): Branches 视图渲染修复 + 工具栏 Action 组补齐 + 命令 bug 修复 + 冲突兜底引导; - Phase 0a(解除最大痛感):新增 engine/ref/for-each-ref 纯解析器(NUL 分隔字段,含 upstream/HEAD 标记);branches-tree 改 async getChildren + repo.state.refs 为空时 git for-each-ref CLI 兜底(复用 stash-tree 范式)+ 构造函数自订阅 service.onDidChange;extension 首帧 setTimeout 刷新(修复 repo 在 activate 前已就绪时初始 _onDidChange.fire 早于订阅挂载而被丢失、导致视图永久空白的根因) - Phase 0b(工具栏 Action 组补齐):Changes 视图加 fetch/pull/push/commit/commitAndPush;Branches 加 fetch;Log 加 cherry-pick/revert/reset;cherry-pick/revert 成功后刷新 branchesTree+logTree(registerGitCliCommands 增 logTree 参数);resetHead 重写为选目标 commit + 选模式(修复固定 HEAD~0 导致 mixed/keep 等同空操作);branchDelete 加 --merged 检查决定 -d/-D;merge/rebase 加破坏性操作 modal 确认 - Phase 0c(冲突兜底引导):新增 engine/git-state/conflict-detector 纯逻辑(解析 porcelain 未合并条目 + .git 标记判定 ongoing merge|rebase|cherry-pick|revert)+ adapter conflict-ui;merge/rebase/pull/cherry-pick/revert/stash-pop/unshelve-with-merge 失败时检测冲突弹「解决/中止」,中止执行 git <op> --abort - 测试:新增 for-each-ref(9)+ conflict-detector(11)单测;单测 84/84、集成 3/3、lint/类型检查/生产构建全绿 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch6): Branches 视图对齐 IDEA(Favorites/Tags 四段分组 + ahead-behind/upstream + 6 新命令); - engine/ref/for-each-ref 扩展 %(upstream:track)(6 字段),RawRef 增 ahead?/behind? 解析 - 新增纯逻辑 engine 模块:ref/favorites(toggleFavorite/isFavorite)、ref/cleanup(filterMergeable/isProtectedBranch,提取自 cleanupBranches 并复用)、rebase/todo(parseTodo/serializeTodo/reorderTodo,供子批次 2b rebase webview) - adapter/branch-favorites:分支收藏 workspaceState 持久化(仿 ChangelistRegistry + onDidChange) - BranchesTreeProvider 升级:Favorites/Local/Remote/Tags 四段分组(收藏置顶、HEAD 优先排序);description 显示 ↑ahead ↓behind ★;tag 节点 contextValue;refs in-flight 去重缓存(避免多段并发重复 spawn CLI) - 6 新命令:toggleFavorite(inline 星标 + 收藏段)、checkoutAsNew(从选中分支新建并检出)、compareWithCurrent(HEAD...selected diff --stat)、tagCreate/tagDelete/tagCheckout(标签全周期) - 测试:新增 ref-favorites/ref-cleanup/rebase-todo 单测,for-each-ref 增 ahead-behind 用例;单测 107/107、集成 3/3、lint/类型/构建全绿 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch7): 交互式 Rebase webview 1:1 复刻 IDEA(reword/edit/拖拽重排序); - action 下拉补 reword/edit(对齐 IDEA 全 6 动作 pick/reword/edit/squash/fixup/drop) - reword 行内可编辑 message:选 reword 时 subject input 启用并聚焦(其余动作只读) - HTML5 拖拽重排序:dragstart/dragover/drop 移动 DOM 行 + 视觉反馈(dragging/drop-target),submit 按 DOM 顺序读取 - 正确实现非交互 reword:写 Node editor helper(用 process.execPath 运行,规避 PATH 缺 node)+ state 文件({counter,subjects}),GIT_EDITOR 按调用顺序写入新 message(已功能性验证:多 reword 按序写入 + counter 递增 + 超范围保留) - todo 构造改用 engine/rebase/todo.serializeTodo + isValidAction 校验(复用纯逻辑) - edit/冲突暂停检测:rebase 后探测 .git/rebase-merge 存在 → 提示 continue/skip/abort;catch 接 handleGitConflict - retainContextWhenHidden 保留 webview 状态 - 验证:类型/lint/构建干净,单测 107/107(rebase-todo 8),集成 3/3,reword helper 功能测试通过 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch8): Log 视图对齐 IDEA(提交详情面板 + 高级过滤 + per-commit 操作); - engine/log/log-filter:纯逻辑客户端过滤(mergeMode/dateFrom/dateTo/messageRegex + safeRegex),engine 零 vscode 依赖(FilterableCommit 抽象) - engine/log/commit-files:纯逻辑 parseNameStatus 解析 git diff-tree --name-status(含 R/C rename oldPath) - LogTreeProvider 升级:commit 节点改 Collapsed,展开经 diff-tree 显示变更文件;merge commit 用 git-merge 图标;高级过滤(grep/合并模式/日期/正则);file 节点状态色(added/deleted/renamed/modified)+ 点击打开 diff - 5 per-commit 命令:openCommitFileDiff(hash^ vs hash,root 单版本)、resetToHere(选模式 reset 到此 commit)、createBranchFromCommit、createTagFromCommit、showContainingBranches(git branch --contains) - 4 过滤命令:logFilterGrep(--grep)/logFilterMergeMode(全部|仅合并|仅非合并)/logFilterDate(7|30|90 天)/logFilterRegex(客户端正则) - 验证:类型/lint/构建干净,单测 128/128(新增 log-filter 12 + log-commit-files 9),集成 3/3 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch9): 真实 SVG 提交拓扑图(解析 git --graph 字符粒度渲染 + 可点击 + 实时刷新); - engine/log/graph-parser:纯逻辑 parseGraphLog(NUL 分隔 graph/hash/decorate/subject,续行无 NUL)+ normalizeGraphWidth(列对齐)+ classifyGraphChar - graph-webview 完全重写为 SVG:按字符粒度还原 git 已分配的 lane 布局(*→可点击圆点、|→竖线、/→斜线、_→横线),按列 floor(col/2) 多色着色(类 IDEA 多色 lane);commit 行右侧绘制 hash/refs/subject 文本(refs 着色) - 节点可点击:postMessage hash → host QuickPick per-commit 操作(cherry-pick/revert/reset/new branch/new tag/包含分支/复制 hash) - 实时刷新:订阅 service.onDidChange(400ms 防抖)重新获取并重绘;panel dispose 释放订阅 - 已用本仓库真实 git log --graph 验证格式兼容(NUL 分隔 + graph ASCII 前缀) - 验证:类型/lint/构建干净,单测 136/136(新增 graph-parser 8),集成 3/3 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch10): Push/Update/Merge 对话框 + fetch prune + Co-authored-by trailer; - engine/commit/trailer:纯逻辑 appendCoAuthoredBy(正确区分 trailer 块 vs CC subject,重复不追加)+ authorArg;修正「feat: x 单行被误判 trailer」 - adapter/remote-commands:Push 对话框(待推送预览 + remote + force/force-with-lease + push tags)、Update Project(merge/rebase 策略 pull)、Merge 对话框(ff-only/no-ff/squash + 自定义 message);均接 handleGitConflict - fetch 增强:QuickPick 普通/Prune(清理已删除远程分支),repo.fetch({prune}) - package.json:3 新命令 + Changes/Branches 视图工具栏入口 - 验证:类型/lint/构建干净,单测 143/143(新增 commit-trailer 7),集成 3/3 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch11): 自绘 3-way Merge Editor(自实现 diff3 + 冲突解决全链路); - engine/merge/diff3:纯逻辑自实现三方合并(基于 LCS 求 base↔ours/base↔theirs 匹配锚点,diff3 规则判定 stable/conflict;双方同改动/单方改动自动消解,仅双方不同改动才冲突)+ resolveHunk(ours/theirs/both/base/manual) + conflictCount - adapter/webview/merge-editor:WebviewPanel 三栏(OURS | RESULT 可编辑 | THEIRS),stable 段只读、conflict 段 Accept 按钮(Ours/Base/Theirs)填 RESULT,默认 RESULT 含冲突标记;保存拼装全量结果写回 + git add 标记已解决,残留标记二次确认 - registerMergeCommands:resolveConflicts(列冲突文件→打开 editor)、acceptOurs/acceptTheirs(git checkout --ours/--theirs + add 快捷) - handleGitConflict「解决冲突」直接调起 resolveConflicts(Phase 0c 引导接入 Phase 3 editor) - 数据:git show :1/:2/:3 取三阶段 → diff3 - 已用真实 git 冲突(UU 文件)验证:阶段可读 + diff3 正确判定冲突段数 - 验证:类型/lint/构建干净,单测 159/159(新增 diff3 16),集成 3/3 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * feat(Parity-Batch12): Phase 4/5 收尾(Stash 高级 + Patch + Reflog + Blame 行内注解); - Stash 高级:stashKeepIndex(--keep-index 保留已暂存)、stashClear(清空)、stashBranch(git stash branch 从 stash 创建分支) - misc-commands:createPatch(导出未暂存/已暂存/全部改动为 .patch)、applyPatch(应用 patch,支持 --index/--3way/--check 模式)、showReflog(git reflog 渲染) - engine/blame/blame-parser:纯逻辑解析 git blame --line-porcelain(同 commit 块复用元数据缓存)+ formatAnnotation - adapter/editor/blame-annotation:BlameAnnotationController 用 TextEditorDecorationType before 行内渲染每行作者·日期(IDEA Annotate 等价),toggle 开关、文档变更自动清理、hover 显示 sha/summary - package.json:7 新命令 + Stash/Log/Changes view/title + stash 右键 + editor/context(blame) - 真实 git blame --line-porcelain 验证解析器格式兼容 - 验证:类型/lint/构建干净,单测 166/166(新增 blame-parser 7),集成 3/3 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * docs(Parity-Batch13): 同步 CHANGELOG/实施状态/README 至 Batch5-12 全量对齐; - CHANGELOG [Unreleased]:详记 Batch5-12 全部交付(13 engine 模块 + 21 命令,单测 64→166、命令 56→77)+ 待补项 - implementation-status:更新「最后更新」+ Batch5-12 重大更新说明(API 限制已由 execGit CLI 解决)+ 里程碑表追加 3 行 Recovery 汇总 - README 已知限制:改写为「多数已由 CLI 解决」+ 列出真实剩余待补项 - 验证:类型/lint/构建/166 单测/集成 3/3 全绿(文档无构建影响) 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
复刻发布流水线缺口修复:CI 新增独立 github-release job 将 .vsix 附带至 GitHub Release(与市场 publish 解耦);rc.3 版本切定 0.0.3 + CHANGELOG/README/文档同步。 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
- ActivityBar 角标:createTreeView 承载 .badge,复用 getChanges() 计数接入既有刷新链路(修复活动栏不显示未提交文件数)。 - Branches Push:无上游分支选定 remote 并以 -u 建立追踪;errMsg 暴露 GitError.stderr(修复「Failed to execute git」并使失败可读)。 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
package.json 版本 0.0.3 → 0.0.4(Marketplace major.minor.patch 约定), README 安装示例同步为 hyper-git-0.0.4.vsix;CHANGELOG 新增 [0.0.1-rc.4] 段记录本次两处工具窗口缺陷修复(活动栏未提交角标、 Branches 无上游 Push)。预发布语义由 git tag v0.0.1-rc.4 + --pre-release 体现。 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
- 新增 hyperGit.worktrees 视图:经 git worktree list --porcelain -z 枚举工作树,区分主工作树 / 普通 / detached / locked / prunable,当前打开的工作树高亮; - 新增 9 个命令:刷新、新建(新建分支·检出已有·Detached 三模式)、打开(新窗口)、删除(普通/强制 + 二次确认)、复制路径、锁定、解锁、移动、清理(prunable 预览 + 确认); - 新增 engine 纯逻辑解析器 parseWorktreeList(NUL 段累积状态机,适配 -z 真实格式)+ vitest 单测; - 主工作树与当前打开工作树的删除/移动经菜单 when 与命令内双重守护; - API 不可用降级复用 EmptyChangesProvider,避免「视图未提供器」报错。 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概述
本 PR 将
feature/1.x.x全量功能合入master,是 Hyper Git 从 0 到 1 的首个完整版本(v0.0.4)。基线master此前仅有LICENSE一个文件,本次合入 124 个文件、约 1.7 万行,落地一个在 VS Code 上完整复刻 IntelliJ IDEA Git 工具窗口与 Commit 提交窗口、并为未来 AI Agent 自主代理预留架构接缝的扩展。核心能力
按 IDEA Git 工具窗口对标,提供 7 个视图 + 93 个命令:
补充能力:行内提交 CodeLens、Blame 注解、cherry-pick/revert/reset/rename、partial/hunk 级提交、交互式 Rebase UI、3-way Merge 编辑器、导出/应用 Patch、Update Project。
架构设计
正交分层,机制与策略分离:
engine/:纯逻辑层(零 vscode 依赖、可单测),承载解析器与算法——for-each-ref/worktree-list/log-filter/graph-parser/hunk-parser/diff3/conventional-linter/conflict-detector等。adapter/:VS Code 适配层(唯一接触 vscode API),承载 TreeDataProvider / Webview / 命令注册 /GitRepositoryService(vscode.git 稳定 API + 受控execGitCLI 双通道)。agent/:AI 接缝层(当前 Null 实现,预留 LLM/消息生成/分组/冲突解析的注入点)。infra/shared/types/:日志、Git Console、Webview 协议、vscode.git 类型契约。工程化
uv/pnpm包管理规范;pre-commit hooks。@vscode/test-electron集成冒烟测试。里程碑
涵盖 M0(脚手架 + CI + 分层骨架)→ M1(Git Adapter + Changes 树)→ M2(Commit 窗口 + Pipeline + AI 接缝)→ M3(Log/Branches/Blame)→ M4(Stash/Shelf)→ M5(全量 Parity:Graph/Rebase/Merge/partial commit + Worktree),合并 v0.0.1-rc.1 ~ rc.4 与 #13/#16/#17/#18。
验证
pnpm test:unit:178 单测全绿pnpm compile:tsc 类型检查 + eslint + esbuild 全过.vsix(ci+chore(Release): v0.0.1-rc.3 发布 + GitHub Release 自动附带可本地安装的 .vsix #16)🤖 Generated with Claude Code