Skip to content

refactor(ui): 按设计稿重构工作区与 Diff 布局 - #33

Merged
ShaoClean merged 2 commits into
developmentfrom
cindy/tranquil-curie
Sep 16, 2026
Merged

ShaoClean merged 2 commits into
developmentfrom
cindy/tranquil-curie

Conversation

@ShaoClean

@ShaoClean ShaoClean commented Sep 16, 2026

Copy link
Copy Markdown
Owner

背景与结果

按 Issue #31 的浅色蓝色主题设计稿重构工作区:Diff 居中,改动与提交在右侧,两侧可独立隐藏并从顶栏恢复。重复的仓库总览入口已合并,设置与帮助集中到应用菜单;面板切换保留文件选择、筛选和草稿。

变更类型

  • 优化 / 重构(improvement / refactor)

关联 Issue

Closes #31

变更内容

  • 默认左 / 右宽度为 236 / 320px;支持独立开关、拖动调宽、快捷键和专注阅读。
  • 布局设置增加右侧显隐和默认 Diff 模式;旧偏好补齐字段,保留原有宽度和树排序。
  • Diff 增加旧 / 新行号、版本上下文;分栏长行折行,窄窗口工具栏适配。
  • 保留 Git 操作、提交历史、分支、储藏、远程和 AI 提交生成入口;同步更新桌面集成测试。

设计文档(Wiki)

https://github.com/ShaoClean/remote-git/wiki/Issue-31

验收及前后截图:https://github.com/ShaoClean/remote-git/wiki/Issue-31-Validation

Wiki 修订:bd3a32186bc1a8f6dac64eb8325b25266daebf51(已补齐 Issue / PR 反向链接与功能索引)。

重构前 重构后
重构前 重构后

验证

检查 / 场景 环境 结果
前端构建、测试 macOS arm64 / Node 25.5.0 通过,46 项测试
桌面构建、单元测试 Electron 44.2.0 通过,41 项单元测试
两阶段桌面集成冒烟 普通临时目录、隔离数据与模拟后端 通过,覆盖设置、Diff、暂存、树排序、跨进程布局恢复及现有更新流程
四种显隐、菜单迁移、筛选、草稿、快捷键 Ego Chromium 通过
1440 / 1280 / 900 / 768 / 375 / 320px Ego Chromium 通过,分栏长行和页面无溢出
仓库切换、暂存 / 取消暂存、提交、获取 / 拉取 / 推送、历史、分支切换 隔离内存 fixture 通过

兼容性与风险

未改 SSH / Git API 或存储版本。旧宽度保持,新增偏好字段兼容补齐。首次在隐藏工作树目录启动桌面测试时,Express 静态服务返回 404;复制同一构建到普通临时目录后通过集成测试。

本 PR 已于 2026-09-16 合并。用户随后确认已验证、报告的问题均已解决,按用户请求将 Issue #31 更新为已完成并关闭。此前自动验收未覆盖真实 SSH 服务器和 Windows / Linux 桌面;本次状态更新不新增这些环境的逐项测试记录。

提交前检查

  • 已自查差异,范围与 Issue 一致。
  • 已记录实际验证结果及未验证项。
  • 已更新使用说明和现有桌面回归测试。
  • 已更新 Wiki 验收、索引及双向链接。
  • 代码与截图不包含真实凭据或私人服务器数据。

@ShaoClean
ShaoClean marked this pull request as ready for review September 16, 2026 10:54
@ShaoClean
ShaoClean merged commit 60e9652 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

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[优化] 参考 Codex App 重构 UI:工作区、设置入口与 Diff 布局

1 participant