Skip to content

feat(history): 支持所有分支提交图与连续历史浏览 - #37

Merged
ShaoClean merged 1 commit into
developmentfrom
cindy/steady-archimedes
Sep 16, 2026
Merged

ShaoClean merged 1 commit into
developmentfrom
cindy/steady-archimedes

Conversation

@ShaoClean

@ShaoClean ShaoClean commented Sep 16, 2026

Copy link
Copy Markdown
Owner

背景与结果

提交历史现在以多列拓扑图展示所有本地已有引用可达的提交,能够看到其他本地分支、远程跟踪分支和标签的独有历史。每次加载 50 条并追加保留已有记录;选中提交后在下方查看文件变更和 Diff,窄窗口可返回原浏览位置。

变更类型

  • 优化 / 重构(improvement / refactor)

关联 Issue

Closes #36

变更内容

  • 返回完整父提交与结构化引用,使用真实拓扑绘制分叉、普通及多父合并,支持虚拟列表和跨页轨道延续。
  • 分页返回末尾状态及历史版本;引用或浅克隆边界变化时保留已加载记录并提示刷新,防止混合不同版本导致遗漏。
  • 上方提交图、下方文件变更与 Diff,可调整高度;保留蓝色主题,历史页独立于改动页的右侧面板偏好。
  • 补充真实 Git / SSH、分页竞态、图布局和 Electron 集成测试。

设计文档(Wiki)

验证

检查 / 场景 环境 结果
SSH 包测试 macOS 15.5 arm64 / Node 25.5 59 通过,2 个 Windows 专属测试跳过;包含真实本地 SSH
前端测试 同上 55 通过
相关服务端测试 repository、git.service、new-file-deletion 13 通过
桌面构建、单元测试 Electron 44.2.0 构建通过;41 项单元测试通过
桌面集成回归 构建产物复制至普通临时目录 两阶段通过;含 155 条历史、滚动保留、文件 Diff、刷新冲突与窄窗口返回
浏览器验收 ego-browser;真实临时 Git;1440 / 600 / 320 px 160 条历史连续加载到底;合并 Diff、分栏模式、失败重试、引用变化、空仓库通过
服务端全量测试 当前提交及原 development 基线复核 62 通过、4 个既有依赖注入测试失败;与本次变更无关

直接在隐藏的 .cindy-worktrees 路径运行桌面集成测试时,既有静态文件服务会返回 404;复制同一构建产物到普通临时目录后完成全部集成回归。完整步骤与已知限制见 Wiki。

兼容性与风险

GET /repositories/:id/log 从数组调整为分页对象,前后端需一起更新;默认查询覆盖所有引用。没有数据库迁移或新的持久化设置,不自动 fetch,也不修改远程仓库。Windows / Linux 原生环境本次未验证。

提交前检查

  • 已自查差异,变更范围与关联 Issue 一致。
  • 已记录验证结果及未验证项。
  • 已更新 README。
  • 已更新 Wiki 页面、索引和 Issue / PR 双向链接。
  • 代码、日志与截图不包含密码、私钥或访问令牌。

@ShaoClean ShaoClean added the optimization Improve existing performance, usability, layout, or reliability label Sep 16, 2026
@ShaoClean
ShaoClean marked this pull request as ready for review September 16, 2026 13:31
@ShaoClean
ShaoClean merged commit 02fee0c into development Sep 16, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

optimization Improve existing performance, usability, layout, or reliability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[优化] 参考 GitLens 重构提交历史,支持所有分支提交图

1 participant