Skip to content

Releases: Wongzexu/dsh-git-status

v0.4.1 —— 插件改名 @wongzexu/dsh-git-status 并发布 npm

Choose a tag to compare

@Wongzexu Wongzexu released this 15 Aug 15:40

本版要点

插件正式改名为 @wongzexu/dsh-git-status 并发布 npm(v0.4.0)。
npm 上的 dsh-git-status 名称已被其他作者的 React 实现占用(与本插件无关),
无作用域名 dsh-gitstatus 又被 npm 相似度保护拒绝,故采用 scoped 包名;
GitHub 仓库名保持不变。GitHub 版本号用 v0.4.1,是因为 v0.4.0 已被旧身份的首个发布占用。

安装

方式一(npm,推荐):

dsh plugin --profile web add @wongzexu/dsh-git-status

方式二(GitHub 源码):

dsh plugin --profile web add github:Wongzexu/dsh-git-status

方式三(本地目录,开发/自用):

dsh plugin --profile web add /path/to/dsh-git-status

迁移提示:旧版本以 dsh-git-status 身份安装。升级请先
dsh plugin --profile web remove dsh-git-status 再按新包名安装;
插件面板中显示的新 id 为 @wongzexu/dsh-git-status。已装旧实例不受影响。

功能更新(相对 v0.4.0)

  • 改名并发布 npm@wongzexu/dsh-git-status@0.4.0,安装/卸载/启用命令与文档全部同步
  • 分支徽标多远程折叠:同一分支 ≥2 个远程折叠为计数子标签 ⎇ main [2]
    悬停显示完整远程引用列表,右键先选远程再操作;游离 HEAD 徽标缩为 H
  • 推送分支:右键本地分支「推送到远程…」——远程多选(复选框 + 选择记忆)+
    Set Upstream + normal / force-with-lease / force 三模式,失败保留对话框可重试
  • stash 操作:应用 / 弹出 / 从 stash 建分支并检出 / 删除(确认框),
    冲突分类提示且 stash 保留;右键未提交虚拟行「暂存未提交改动」
  • 远程/标签操作:删除远程分支(远程已删自动降级清理本地跟踪引用)、
    推送 tag / 删除 tag(每远程一项,无远程时禁用)、右键 commit「创建 tag…」
    (轻量/附注 + 多远程推送)与「以该提交为起点新建分支」
  • merge 支持 --no-ff;切换守卫:冲突 / 进行中操作 / 其他 worktree /
    已跟踪未提交改动确认框(force 旁路)
  • UI 打磨:删除确认框自绘 + 操作反馈提示优化;滚动条主题中性灰
    (color-mix + 旧引擎回退)+ scrollbar-gutter 防布局跳动
  • 文档:中英双语完整操作指南(docs/USAGE.md)、dshfind 与
    Awesome DSH Plugin 收录徽章、上游参考源码沉淀

工程

  • 150 个 node:test 用例全部通过(真实 git fixture,零第三方依赖)
  • 纯前端自渲染 DOM(greeter 模式,零 React、零构建链)
  • Node half 八路由:git log / show / branch / fetch / push / remote / stash / events,
    写路由 CSRF 防护 + 权威校验,fetch/push 超时放宽
  • MIT 许可

v0.4.0 —— Git 状态(Git Graph)插件首个发布

Choose a tag to compare

@Wongzexu Wongzexu released this 15 Aug 05:27

⚠️ 开发与测试状态 · In development & testing

当前版本(v0.4.0)处于开发与测试阶段:功能与行为可能随迭代调整,接口尚未冻结;正式使用前请先在非关键环境自测评估,并留意后续版本更新。

The current version (v0.4.0) is under active development and testing: features and behavior may change with each iteration, and interfaces are not yet frozen — evaluate in non-critical environments before relying on it, and watch for future releases.

主要功能

  • commit DAG 泳道图:SVG 渲染,第一父链成线、泳道复用、合并连线、HEAD 加粗圆点
  • 行内 refs 徽标:HEAD(红)/ 分支(金)/ 远程(蓝)/ 标签(绿),当前分支亮金高亮,同名本地/远程合并 pill
  • 未提交改动虚拟行 + stash 显示:空心圆虚线连 HEAD,展开按「更改 / 暂存的更改」分组详情
  • 行内展开提交详情:提交信息 + 变更文件 + 逐文件 diff(256KB 截断)
  • 分支操作:右键切换 / 合并 / 重命名 / 删除 / 强制删除;远程分支创建本地分支;tag 建分支;「+」新建分支(客户端 + 服务端双重校验)
  • 切换守卫:冲突 / 进行中操作 / 其他 worktree / 已跟踪未提交确认(force 旁路)
  • 合并冲突处理:中止合并 / 继续合并
  • 一键拉取全部远程git fetch --all,失败分类提示
  • SSE 即时刷新:2s 状态键对比 + 15s 心跳,断连 10s 轮询兜底
  • 浮窗交互:可拖拽、位置记忆、悬浮开关按钮、首次使用引导气泡

安装

dsh plugin --profile web add <插件目录>

完整文档见 README 与 docs/USAGE.md(中英双语操作指南)。