前言¶
DeepSeek Harness (DSH) 的設計理念是“一切皆插件”。在智能體開發流程中,頻繁切換終端或打開外部 Git 工具會打斷會話的連貫性。dsh-git 插件將 Git 的核心操作封裝爲側邊欄面板,讓開發者無需離開當前界面即可完成版本控制。
這是什麼¶
dsh-git 是由 EasyTZ 維護的一款客戶端插件,爲 DeepSeek Harness 提供可視化的 Git 面板。它不依賴命令行記憶,直接在界面中處理暫存、提交、推送和分支切換等操作。
安裝與啓用¶
安裝前請確保環境滿足以下依賴:
* dsh 版本 >= 0.1.1-rc.2
* 機器上已安裝 git 且在系統 PATH 中
* pnpm 可用
使用命令行安裝:
dsh plugin --profile <name> add @easytz/dsh-git
<name> 爲必填的 profile 名稱,桌面版通常爲 web,TUI 版爲 tui。安裝完成後重啓 dsh,側邊欄底部會出現 Git 按鈕。
核心功能¶
該插件提供以下核心能力:
* 查看改動:展示當前倉庫的變更文件列表。
* 逐文件暫存:對每個文件單獨執行暫存或取消暫存操作。
* 提交與推送:在面板內直接編寫提交信息並推送到遠端。
* 切換分支:通過下拉菜單快速切換分支,並顯示與上游的領先/落後數量。
* 瀏覽歷史:查看最近提交記錄,點擊可查看詳情(包括改動文件及行數統計)。
* 撤銷最近一次提交:支持對最新提交進行回滾。
* 多倉庫支持:支持在一個工作區下管理多個獨立的 Git 倉庫。
典型用法¶
-
打開面板
點擊側邊欄底部的 Git 按鈕打開面板。 -
選擇倉庫
如果當前工作區下有多個倉庫,面板頂部會顯示“倉庫”下拉框,選擇目標倉庫即可。 -
暫存文件
在“變更”列表中,點擊文件右側的 + 暫存文件;已暫存的文件點擊 − 取消。 -
提交
在提交框中編寫信息,點擊 提交 按鈕。 -
推送
點擊 推送 ↑n 按鈕,其中n爲本地領先遠端的提交數。 -
切換分支
在分支行使用下拉菜單切換分支,旁邊的數字顯示相對上游的進度。 -
查看歷史
點擊“最近提交”中的任意一條,彈出詳情窗口查看完整提交信息和文件變動。 -
撤銷提交
只有最新的一條提交右側有撤銷按鈕。點擊後按鈕變紅進入二次確認,三秒內再次點擊即可執行:- 未推送的提交執行
reset --mixed,改動退回工作區。 - 已推送的提交執行
revert,生成反向提交。
- 未推送的提交執行
注意事項¶
- 撤銷限制:僅支持撤銷最新的一條提交。
- 推送衝突:當遠端拒絕推送(如衝突)時,面板會提示去終端執行
git pull,不會自動處理。 - 未跟蹤文件:新文件不會被自動暫存,必須逐個點擊 + 明確選擇。
- 緩存機制:瀏覽器端插件 bundle 帶一年期的 immutable 緩存,升級後需重啓 dsh 才能生效。
- 多倉庫掃描:插件只掃描工作區根目錄下一層的子目錄作爲倉庫,會自動跳過
node_modules、dist等目錄。
適用場景¶
適用於需要在 DSH 環境內進行高頻 Git 操作的開發者,特別是習慣在側邊欄進行快速版本控制,而不願頻繁切換窗口的場景。
結尾¶
dsh-git 通過可視化的方式簡化了 DSH 中的 Git 流程,讓版本控制更貼近操作流。更多細節可參考 插件目錄 或 GitHub 倉庫。