@xbzbing/dsh-git-panel 1.6.2 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/client.js +170 -52
- package/lib/host/actions.js +49 -5
- package/lib/host/core.d.ts +3 -1
- package/lib/host/core.js +25 -5
- package/lib/host/fs-deps.d.ts +2 -0
- package/lib/host/fs-deps.js +25 -0
- package/lib/host/history-topology.d.ts +25 -0
- package/lib/host/history-topology.js +55 -0
- package/lib/host/index.d.ts +1 -1
- package/lib/host/index.js +5 -18
- package/lib/host/queries.js +20 -14
- package/lib/host/snapshot-fingerprint.d.ts +3 -0
- package/lib/host/snapshot-fingerprint.js +12 -0
- package/lib/host/suggest.d.ts +13 -0
- package/lib/host/suggest.js +30 -6
- package/lib/host/types.d.ts +45 -4
- package/lib/host/types.js +13 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ dsh plugin --profile web add github:xbzbing/dsh-git-panel
|
|
|
25
25
|
## 功能
|
|
26
26
|
|
|
27
27
|
- **Git 总览**:三栏布局。左栏是分支 / 标签列表,点击某个引用即按它过滤历史;中栏是提交历史图,支持按提交信息、commit 哈希、作者、日期搜索,悬停某条提交弹出卡片显示完整提交信息(comment);右栏是选中提交的变更文件树与提交信息,点击文件在弹出的 modal 里查看该文件在此提交中的差异。
|
|
28
|
-
- **变更记录**:面向本地工作区。左栏是统计条(文件数 / 增删行数 / 最近变更时间)、带复选框的未提交变更列表、以及含 **Amend** 复选框的提交框,支持逐文件暂存 / 取消暂存 /
|
|
28
|
+
- **变更记录**:面向本地工作区。左栏是统计条(文件数 / 增删行数 / 最近变更时间)、带复选框的未提交变更列表、以及含 **Amend** 复选框的提交框,支持逐文件暂存 / 取消暂存 / 丢弃与手动提交(「放弃更改」只出现在未暂存行——丢弃是工作区操作,已暂存的文件要撤销请先「取消暂存」再放弃),勾选若干文件后可「放弃选中的更改」批量丢弃工作区改动(二次确认只报将丢弃的文件数量,丢弃后不可恢复;选中项里来自暂存侧的条目不在放弃范围,会在确认框里单独说明);未跟踪目录会整目录删除;若该条目本身就是一个 Git 仓库(嵌套仓库、子模块或 bare 仓库),递归删除会连带删掉整个内部仓库,因此会整批拒绝、一个都不删(若该仓库是在删除过程中才出现的,同批更早的条目可能已被删除,提示会说明并要求刷新),两种情况都提示此操作请在终端中完成;只「包含」仓库的普通目录仍作为整体删除;鼠标移到文件行尾的图标按钮上会给出该操作的功能说明;右栏是选中文件的差异对照。
|
|
29
29
|
- **AI 生成提交信息**:提交框旁的「AI 生成」按钮根据当前未提交变更(勾选了文件则只看这些文件)与仓库既有提交风格,调用你在 DSH 中配置的模型生成提交信息,填入提交框后可编辑再提交(生成期间提交框转为只读并在框内显示 loading 图标,避免手写内容与生成结果竞争;成功后自动填入并聚焦,失败不覆盖已有草稿);没有可生成的变更、模型服务不可用或生成失败都会给出明确提示。**生成语言默认自动**:从仓库历史提交的语言推断(按新旧加权的投票,忽略 release / merge / revert 等机械提交;当前 git 作者在此仓库有 ≥3 条提交时只看本人的),中文仓库即生成中文、英文仓库即生成英文,也可在插件详情页固定为中文或 English。**隐私提示:生成请求会把 diff 内容发送给你在 DSH 中所配置模型的供应商。** 可在插件详情页关闭该按钮,并调整输入预算(发送给模型的 diff 上限,默认 128 KiB)、输出上限(默认 4096 tokens,思考模型的推理计入该预算)与生成超时(默认 15 秒)。
|
|
30
30
|
- **标签管理**:在「Git 总览」右栏的提交详情顶部可为选中的提交创建标签(轻量标签,或带说明的附注标签);该提交上已有的标签以可删除的标签片呈现,删除走二次确认。创建与删除标签都只作用于本地仓库,不会推送到远程,如需同步需自行 `git push <remote> <tagname>`(或 `--tags`)。
|
|
31
31
|
- **切换分支**:鼠标移到 Git 总览左栏的本地分支或远程引用行上,行尾出现「切换」按钮(窄面板在「筛选分支」底部弹层的行上,触屏设备按钮常显);当前分支没有该按钮,单击行本身仍是筛选提交历史。点击「切换」后弹出确认框。远程引用不会直接检出(那会游离 HEAD):已有同名本地分支就切换它,否则确认后执行 `git checkout -b <名> --track <origin/名>` 创建本地分支并设置跟踪。确认框显示「当前 → 目标」;有未提交变更时列出数量并提供两种选择——直接切换(与目标分支冲突时由 Git 拒绝、工作区不变),或先贮藏(含未跟踪文件)再切换,之后到「变更记录 → 贮藏」手动恢复(不会自动恢复,恢复冲突需手动解决)。切换成功后提交历史、分支列表、变更列表与文件浏览的目录缓存一并刷新。
|