DeepSeek Harness (DSH) 允許通過 Web 界面管理 Git 倉庫。Git worktree 是在隔離目錄中處理不同分支的標準方式,但通常需要終端操作。dsh-git-worktree 插件將此功能直接引入 DSH Web UI,實現了分支選擇、切換以及 Worktree 的創建與隔離。
插件介紹¶
這是一個由開發者 LaoYueHanNi 維護的客戶端插件。它旨在解決在 Web UI 中進行 Git 分支管理和 Worktree 隔離的需求。該插件採用 MIT 許可證。
核心功能¶
插件提供了一系列操作,覆蓋從分支切換到 Worktree 全生命週期的管理:
-
分支管理
- 分支切換:在 Web 界面直接切換分支,支持從遠程分支檢出。
- 創建與重命名:支持從任意分支創建新分支,或對本地分支進行原地重命名。
- 分支更新:支持將當前分支更新至上游,僅允許 fast-forward。
- 遠程同步:支持從 Web 界面執行 fetch 並清理過期追蹤分支。
-
Worktree 管理
- 隔離:通過開啓 Worktree 模式,將當前分支的工作空間切換到隔離的目錄中。
- 快速跳轉:支持直接跳轉到已存在的 Worktree 目錄。
- 移除:支持移除 Worktree,並處理未提交文件和運行中的會話。
- 管理器:提供一個統一的視圖查看所有 Worktree,包括新舊存儲位置。
-
交互體驗
- 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 環境下維護多分支項目的開發者。