dsh-git-worktree: Web 界面的分支切换与 Worktree 管理插件

DeepSeek Harness (DSH) 允许通过 Web 界面管理 Git 仓库。Git worktree 是在隔离目录中处理不同分支的标准方式,但通常需要终端操作。dsh-git-worktree 插件将此功能直接引入 DSH Web UI,实现了分支选择、切换以及 Worktree 的创建与隔离。

插件介绍

这是一个由开发者 LaoYueHanNi 维护的客户端插件。它旨在解决在 Web UI 中进行 Git 分支管理和 Worktree 隔离的需求。该插件采用 MIT 许可证。

核心功能

插件提供了一系列操作,覆盖从分支切换到 Worktree 全生命周期的管理:

  1. 分支管理

    • 分支切换:在 Web 界面直接切换分支,支持从远程分支检出。
    • 创建与重命名:支持从任意分支创建新分支,或对本地分支进行原地重命名。
    • 分支更新:支持将当前分支更新至上游,仅允许 fast-forward。
    • 远程同步:支持从 Web 界面执行 fetch 并清理过期追踪分支。
  2. Worktree 管理

    • 隔离:通过开启 Worktree 模式,将当前分支的工作空间切换到隔离的目录中。
    • 快速跳转:支持直接跳转到已存在的 Worktree 目录。
    • 移除:支持移除 Worktree,并处理未提交文件和运行中的会话。
    • 管理器:提供一个统一的视图查看所有 Worktree,包括新旧存储位置。
  3. 交互体验

    • IDEA 风格选择器:支持层级折叠、搜索、高亮匹配分支。
    • 行上下文菜单:右键菜单提供检出、新建、重命名、删除等操作。

安装与启用

由于 GitHub 直接安装已结束,必须通过 npm 进行安装。安装前请确保主机版本符合要求。

安装命令

dsh plugin --profile web add @laoyuehanni/dsh-git-worktree

环境要求
* 需要启用 web profile (dsh web)。
* 主机版本需为 dsh 0.1.7-rc.1 或更高版本。

典型用法

安装后,可通过以下命令管理插件:

更新插件

dsh plugin --profile web update @laoyuehanni/dsh-git-worktree

移除插件

dsh plugin --profile web remove @laoyuehanni/dsh-git-worktree

注意事项

  • 更新限制:无法直接原地更新插件,需要先执行 remove 再执行 add。
  • 存储位置:新创建的 Worktree 位于仓库内的 .dsh/gitworktree/ 目录下。旧版存储(根目录下)为只读状态,以保持兼容。
  • 配置保存:插件的设置保存在 DSH 设置文档中,而非本地文件。

总结

dsh-git-worktree 为 DSH Web UI 增加了完整的 Git Worktree 支持。通过集成 IDEA 风格的分支选择器和行上下文菜单,它提供了在浏览器中进行分支管理、远程同步和 Worktree 隔离的能力,适合需要在 Web 环境下维护多分支项目的开发者。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜