packages/dsh-git-graph
zhu1090093659/dsh-web输入框上方提供 Git 分支选择器,并把分支泳道与提交历史画成图谱,沿着时间线找到任意变更。
DSH Web 原生右侧栏的只读 Git Graph,支持提交历史、分支与标签、文件 Diff、两提交比较和完整历史原文。
Version 0.6.0 · DSH 0.2.0-rc.2 · MIT 中文说明 · Static title
dsh-git-graph by WhitePlusMS is a read-only Git visualization plugin for the native right sidebar of DeepSeek Harness (DSH) Web. Browse your workspace's commit history, branches, and file changes without an API key or conversation message.
Quick facts
Item · Value Plugin name · dsh-git-graph (repository and DSH bundle row id) Repository · https://github.com/WhitePlusMS/dsh-git-graph Install source · GitHub Release archive (dsh-git-graph-0.6.0.tgz), not npm Requires · DSH 0.2.0-rc.2, dsh CLI, pnpm, Git on the DSH Host Operations · Read-only — no stage, commit, push, pull, fetch, merge, or tag Languages and license · Chinese / English UI · MIT
Install · Usage · Keyboard controls · FAQ · Scope · Uninstall · Documentation
The GIFs were recorded with 0.4.0; the comparison and full-source screenshots below are from 0.5.0. They show earlier versions. The new branch navigation, dropdown controls, and dynamic graph alignment in 0.6.0 were checked in real DSH; see the fix and validation record.
More screenshots: commit comparison, full source, English, and narrow screens
See the 0.6.0 release notes for fixes and upgrade details.
Commit details and file diffs
Commit comparison and uncommitted changes
Requires DSH 0.2.0-rc.2, the dsh CLI, pnpm for plugin installation, and Git installed on the DSH Host.
Install the prebuilt v0.6.0 Release package through either DSH's plugin page or the CLI. Both accept the same package source. See the official plugin manager guide and packaging guide.
In DSH, open Plugins → Add plugin, paste this URL, install it, and choose Enable now:
https://github.com/WhitePlusMS/dsh-git-graph/releases/download/v0.6.0/dsh-git-graph-0.6.0.tgzOr install from the terminal:
dsh plugin --profile web add https://github.com/WhitePlusMS/dsh-git-graph/releases/download/v0.6.0/dsh-git-graph-0.6.0.tgzThe archive includes the built lib/ entry points. You do not need to clone this repository, build it locally, or keep a development folder at a fixed path.
This .tgz is built with pnpm pack and uploaded as a GitHub Release asset; it is separate from GitHub's automatically generated source archives. DSH supports installing this package URL in both the UI and CLI. Publishing a release does not automatically list the plugin in a marketplace; installing by package name alone requires an npm publication.
Name note. The npm package nameddsh-git-graphis a different, unrelated plugin (authorenoughpower, version 0.1.x, with staging and commit features). This project is installed from the Release archive above;dsh-git-graphis used here only as the DSH bundle row id and the package name inside this repository.
Check that dsh-git-graph is installed at version 0.6.0:
dsh plugin --profile web list dsh-git-graphStart DSH Web with dsh web, or restart your existing instance to load the plugin. For updates, run add with the desired release tag, then restart that instance. Use the same profile name for installation, startup, and removal.
For 0.6.0, restart after updating so the Host and Client use the same strict data contract. Settings previously saved separately for a subdirectory are not migrated to the worktree-root settings.
For a custom profile, local .tgz installation, or source builds, see the development guide.
Use Settings to adjust the display. Settings are saved separately for each repository.
Real avatars are enabled by default and access external avatar services: GitHub repositories search public commits by author email; other repositories ask their own Git service first (Gitea/Gogs /avatar endpoint) and then Gravatar; GitHub noreply addresses resolve directly. You can disable them in Settings; missing images or failed requests retain initials.
dsh plugin --profile web remove dsh-git-graphUse the profile you installed into, and restart it after removal.
Control · Action Ctrl/Cmd+F · Find within loaded results Ctrl/Cmd+Shift+F · Toggle display settings Esc · Close the branch, filter, or settings dropdown first, then Find ↑ / ↓ · Select a commit when Find is closed and cleared H · Locate HEAD, or show an out-of-range hint Enter / Space on a row or node · Select that commit Drag a column divider / ← / → · Resize a column; arrow keys work when the divider is focused Double-click a divider · Restore its default width
Shortcuts apply while focus is inside Git Graph. Normal navigation keys do not intercept typing in inputs or scrolling in a file viewer.
How do I view commits and file diffs in DeepSeek Harness Web?
Install the plugin for DSH 0.2.0-rc.2, then open dsh-git-graph from the native right sidebar. See Usage for two-commit comparisons and full historical source.
Why does DSH report `cannot resolve profile bundle "dsh-git-graph"`?
A previous local-directory installation may still link to a folder that was moved or deleted. Reinstall the Release package in the same profile; removing it first also lets DSH register the bundle again if the old installation was no longer enabled:
dsh plugin --profile web remove dsh-git-graph
dsh plugin --profile web add https://github.com/WhitePlusMS/dsh-git-graph/releases/download/v0.6.0/dsh-git-graph-0.6.0.tgzRestart that DSH Web instance afterward. Running dsh plugin --profile web install alone reuses the saved package source and cannot repair a link to a missing folder.
Is `dsh-git-graph` on npm?
No. The npm package with this name belongs to a different project by another author. Install this plugin from the Release archive URL shown above; dsh plugin --profile web add dsh-git-graph (a bare package name) would resolve to that other project.
Is this the same as other DSH Git plugins?
No. Plugins such as kp-z/dsh-dev-git-graph, lengmoXXL/dsh-git, EasyTZ/dsh-git, and LeonZ666/dsh-gitworktree-gui are independent projects. This one is a read-only Git Graph for the native right sidebar, installed only from this repository's Releases.
Do I need an API key or a conversation message?
No. Git Graph reads the current workspace's local Git data directly.
Can Git Graph commit, merge, push, pull, or fetch?
No. The plugin is read-only; refreshing the graph does not fetch remote changes or modify the repository.
Inspired by vscode-git-graph. Thanks to its authors and contributors.
Licensed under MIT.