前言¶
在 DSH Web 裏處理 Git 倉庫時,常見操作不止聊天:還需要切換分支、查看提交圖譜、審覈 Diff,並把當前改動交給 Agent 分析。dsh-git-panel 把這些 Git 操作放進 Web GUI 的右側面板,減少在終端、瀏覽器和對話窗口之間來回切換。
下面介紹它的定位、核心功能、安裝方式和典型用法。
這是什麼¶
dsh-git-panel 是 DSH Web GUI 的 Git 面板插件。它提供分支管理:切換、拉取、抓取、重命名、刪除、合併,以及 GitLens 風格的提交圖譜。
資料中給出的倉庫 owner 爲 a792883583;package.json 的 author 字段爲 Jaden Tang <jaden.tang@sjfood.com>。許可證爲 MIT。
核心功能¶
分支面板¶
分支面板出現在聊天區右側。它顯示本地分支和遠程分支,當前分支高亮,並顯示相對上游的 ahead/behind。
分支列表頂部有即時搜索,可以按分支名或提交信息快速過濾。
常用操作包括:
- 雙擊本地分支切換分支;當前分支雙擊執行拉取。
- 雙擊遠程分支檢出,並自動創建本地跟蹤分支。
- 右鍵分支可複製分支名、重命名、刪除,或合併至當前分支;遠程分支爲刪除遠程分支。
- 一鍵拉取當前分支。
- 一鍵全部抓取,對應命令爲:
git fetch --all --prune
分支膠囊¶
輸入框上方有分支膠囊,顯示當前分支;點擊後展開本地分支列表,可快速切換。
提交圖譜¶
提交圖譜使用 GitLens 風格的提交 DAG 泳道圖,帶三欄標題,列寬可拖拽;渲染使用虛擬化,只繪製可視區域。
點擊提交節點可以查看提交詳情,並執行:
- cherry-pick 到當前分支
- 撤銷該提交,對應命令爲:
git revert --no-edit
寫操作條¶
寫操作條支持以下操作:
- 提交:輸入提交信息後回車,執行:
git add -A && git commit -m
- 推送:一鍵執行當前分支推送,對應命令爲:
git push
- 暫存:
git stash push
可帶說明。
- 恢復暫存:
git stash pop
- 狀態:顯示當前工作區變更文件數。
變更文件與 Diff¶
面板會列出未提交的變更文件,點擊文件可查看與 HEAD 的行內着色 Diff,便於提交前審覈改動。
它也支持將改動列表或單個文件 Diff 一鍵帶入對話輸入框,方便讓 Agent 分析當前修改或差異。
語言、主題與工作目錄¶
- 自動跟隨 DSH Web 界面語言,默認簡體中文。
- 明暗主題跟隨 DSH Web GUI。
- 跟隨當前會話工作目錄;切換項目會話時自動重新綁定。
安裝與啓用¶
先安裝插件:
dsh plugin --profile web add dsh-git-panel
然後重啓 dsh web,打開綁定 Git 倉庫的項目會話。聊天區右側會出現「Git 面板」。
本地開發時,可以用鏈接方式安裝:
dsh plugin --profile web add link:/path/to/dsh-git-panel
修改源碼後,構建並刷新頁面:
npm run build
典型用法¶
下面按常見流程列出可復現操作:
1、進入綁定 Git 倉庫的項目會話,查看右側分支面板。
2、雙擊本地分支切換分支;如果當前分支需要拉取,雙擊當前分支。
3、需要新建本地跟蹤分支時,雙擊遠程分支。
4、提交前,點擊變更文件查看與 HEAD 的 Diff。
5、在提交欄輸入提交信息並回車,執行提交。
6、推送當前分支。
7、需要臨時保存改動時,使用暫存;需要取回時,恢復暫存。
8、點擊圖譜中的提交節點,執行 cherry-pick 或撤銷該提交。
9、需要 Agent 分析時,將改動列表或單個 Diff 帶入對話輸入框。
適用場景與注意¶
適合在 DSH Web 中處理 Git 倉庫,並且需要把分支、提交、Diff 和會話上下文放在同一界面處理的開發者。
使用前需要注意:
- 安裝後需重啓
dsh web,並在綁定 Git 倉庫的項目會話中使用。 - 資料未提供星標數、權限邊界、網絡調用範圍等額外限制信息。
- 插件以當前
dsh進程權限運行;安裝前應檢查源碼與許可證。 - 許可證爲
MIT。 package.json聲明dsh client platform爲web,需注入@deepseek-ai/dsh-client-runtime與@deepseek-ai/dsh-client-locale。package.json的peerDependencies要求@deepseek-ai/dsh-*在>=0.1.0-rc.6 <0.3.0,React在>=16.8.0 <20.0.0。
鏈接¶
- GitHub:https://github.com/a792883583/dsh-git-panel
- 目錄頁:已覈實資料未提供目錄頁 URL。