Skip to content

GitMate 1.11.1

Choose a tag to compare

@alanhaskey alanhaskey released this 14 Oct 05:09
· 6 commits to main since this release

不是仓库时,顶上的按钮该禁的禁、该留的留。

修的问题

面板明明显示「这里还不是 Git 仓库」,上面的分支图表(历史)按钮却还能点 —— 点进去只有一个空视图。

同步按钮早就有 || !status?.isRepo 的守卫,历史按钮漏了。

改动

按钮 不是仓库时
同步 禁用(原本就对)
历史(分支图表) 现在禁用
设置 刻意保持可点

设置不加守卫是有意的:面板不按预期工作时,人第一个想去的就是设置 —— 把它一起禁掉,等于在最需要的时候锁门。

顺带:仓库在面板开着时消失(切换了文件夹、.git 被删掉)会让视图退回改动列表,而不是让历史按钮亮着一个显示不出来的页面。

验证

node test/smoke.mjs     # 601 项断言

新增 3 项断言:历史按钮的 disabled 必须包含 status?.isRepo、设置按钮的 disabled 必须仍是那个单纯的 busy 判断(这条是防回归的关键 —— 它保证后人不会"顺手统一"把设置也禁掉)、以及退回逻辑存在。

渲染守卫新增两条路径:「不是仓库 + 请求历史视图」和「不是仓库 + 请求设置视图」——前者正是这个 bug 的状态。