@feng0531/dsh-vcs 0.3.65 → 0.3.68
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 +69 -45
- package/THIRD_PARTY_NOTICES.md +3 -1
- package/dist/client.js +3 -3
- package/dist/svn-host.mjs +1 -1
- package/docs/RELEASING.md +31 -44
- package/git-history.mjs +27 -14
- package/image-preview.mjs +47 -16
- package/index.mjs +66 -32
- package/local-command.mjs +47 -0
- package/package.json +4 -1
- package/repository-path.mjs +32 -0
- package/text-content.mjs +42 -0
- package/vcs.mjs +7 -66
package/README.md
CHANGED
|
@@ -1,73 +1,97 @@
|
|
|
1
1
|
# DSH VCS
|
|
2
2
|
|
|
3
|
-
DeepSeek Harness(DSH)Web
|
|
3
|
+
在 DeepSeek Harness(DSH)Web 中查看 Git / SVN 文件变更和提交历史的**只读插件**。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
你可以查看差异、浏览历史、追溯文件,但不能通过本插件修改文件、暂存、提交、拉取或推送。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
- npm 包:`@feng0531/dsh-vcs`
|
|
8
|
+
- [下载正式版本](https://github.com/f-e-n-g-0531/dsh-vcs/releases/latest) · [查看更新](https://github.com/f-e-n-g-0531/dsh-vcs/blob/main/CHANGELOG.md)
|
|
9
|
+
- 采用[非商业许可证](<LICENSE>),商业用途须另行书面授权。
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
- 安全静态 PNG、基线单扫描 JPEG、单 VP8 WebP 的工作区及 A/B 图片比较;格式结构与浏览器解码双重检查。
|
|
11
|
-
- 第七批候选:HTTPS SVN 固定工作副本修订日志、历史 r-1/r Diff 与止于复制边界的追溯。必须已发现仓库、手动审阅并勾选网络同意;未授权不联网。仅支持无需额外认证的 HTTPS 服务,不提供凭据或证书配置。正式0.3.62仍没有远程历史入口。
|
|
11
|
+
## 能做什么
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
| 场景 | 功能 |
|
|
14
|
+
| --- | --- |
|
|
15
|
+
| 查看工作区变更 | Git 全部、已暂存、未暂存文件;SVN 本地基线与工作副本、属性差异 |
|
|
16
|
+
| 阅读代码差异 | 默认 Monaco 只读 Diff,支持并排/行内、换行、忽略行尾空白、上一处/下一处差异 |
|
|
17
|
+
| 浏览 Git 历史 | 搜索提交说明、作者和路径;查看本地分支、提交图、提交详情与目录 |
|
|
18
|
+
| 比较历史版本 | 比较提交与选定父提交,或选择两个本地提交进行 A/B 比较 |
|
|
19
|
+
| 追溯代码来源 | 文件历史、精确重命名追踪、Blame(逐行查看最后修改者和提交) |
|
|
20
|
+
| 查看其他内容 | 支持部分静态图片比较;较大历史 UTF-8 文件可分段阅读 |
|
|
21
|
+
| 浏览 SVN 历史 | 明确同意连接后,查看 HTTPS 仓库日志、修订差异和文件历史 |
|
|
18
22
|
|
|
19
|
-
|
|
23
|
+
提供中英文界面。编辑器加载失败时会显示基础文本比较;它不是完整的 Monaco 替代品。
|
|
20
24
|
|
|
21
|
-
|
|
25
|
+
## 安装
|
|
22
26
|
|
|
23
|
-
|
|
27
|
+
需要:
|
|
24
28
|
|
|
25
|
-
|
|
29
|
+
- Node.js **22 或更新版本**。
|
|
30
|
+
- DSH Web:声明兼容 **0.1.7-rc.2 或 0.2.0-rc.2**。
|
|
31
|
+
- 系统 PATH 中有 Git 或 SVN;只使用 Git 时无需安装 SVN。
|
|
26
32
|
|
|
27
|
-
|
|
33
|
+
profile是DSH的配置和插件环境,不是Session。下面的web是示例,请先确认运行中的DSH使用哪个profile;若不同,替换命令中的web。宿主插件命令通过pnpm执行,需确保该工具可用。
|
|
28
34
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
+
在终端执行:
|
|
36
|
+
|
|
37
|
+
dsh plugin --profile web add @feng0531/dsh-vcs@0.3.68
|
|
38
|
+
|
|
39
|
+
安装后由你自行重启 DSH,再刷新原来的 Web 页面。安装会改变所选 profile;升级前请备份配置。**本项目的发布不会自动升级或重启你的 DSH。**
|
|
40
|
+
|
|
41
|
+
也可以从 [GitHub Release](https://github.com/f-e-n-g-0531/dsh-vcs/releases/latest) 下载 tgz 和校验文件,核对 SHA-256 后安装:
|
|
42
|
+
|
|
43
|
+
dsh plugin --profile web add "<tgz 的绝对路径>"
|
|
35
44
|
|
|
36
|
-
|
|
45
|
+
升级、旧包迁移和回滚见[安装指南](https://github.com/f-e-n-g-0531/dsh-vcs/blob/main/docs/INSTALL.md)。
|
|
37
46
|
|
|
38
|
-
##
|
|
47
|
+
## 开始使用
|
|
39
48
|
|
|
40
|
-
|
|
49
|
+
1. 在 DSH 中选择一个 Session,确认它的工作目录在项目内。
|
|
50
|
+
2. 打开 VCS 页面,发现仓库,再从顶部下拉框选择仓库。
|
|
51
|
+
3. 点击文件查看差异,或进入历史视图浏览提交。
|
|
52
|
+
4. 外部工具修改了项目后,手动刷新;可见窗口重新获得焦点时也会刷新。没有定时轮询。
|
|
41
53
|
|
|
42
|
-
|
|
54
|
+
默认发现当前目录、一级子目录以及包含当前目录的上级仓库。项目更深时,输入相对 Session 目录的子目录,例如 `packages/example`;不接受任意绝对路径或越界路径。
|
|
55
|
+
|
|
56
|
+
**注意:Session 位于仓库子目录时,发现后的查看范围可以覆盖整个仓库。**
|
|
57
|
+
|
|
58
|
+
### 左右两侧比较的是什么
|
|
59
|
+
|
|
60
|
+
| 模式 | 左侧 | 右侧 |
|
|
61
|
+
| --- | --- | --- |
|
|
62
|
+
| Git 全部 | 最近提交(HEAD) | 当前工作区 |
|
|
63
|
+
| Git 已暂存 | 最近提交(HEAD) | 暂存区(Index) |
|
|
64
|
+
| Git 未暂存 | 暂存区(Index) | 当前工作区 |
|
|
65
|
+
| SVN 本地变更 | 本地基线(BASE) | 当前工作副本 |
|
|
43
66
|
|
|
44
|
-
|
|
45
|
-
npm pack
|
|
67
|
+
新增文件可能使用空白左侧。冲突文件只供查看,不提供三方合并或冲突解决。
|
|
46
68
|
|
|
47
|
-
|
|
69
|
+
### SVN 历史需要单独同意
|
|
48
70
|
|
|
49
|
-
|
|
71
|
+
本地 SVN 变更比较不连接服务器。打开远程历史前,需要审阅服务器与路径范围并勾选同意;授权约 5 分钟后过期,须重新手动同意。
|
|
50
72
|
|
|
51
|
-
|
|
73
|
+
目前仅支持系统信任、**无需额外认证的 HTTPS SVN 服务**。不提供用户名/密码、自定义证书或其他协议。历史范围固定在本地工作副本的修订,不自动获取服务器最新版本。
|
|
52
74
|
|
|
53
|
-
|
|
75
|
+
## 目前的限制
|
|
54
76
|
|
|
55
|
-
|
|
77
|
+
- **不是完整的 Fork 客户端**:没有仓库写操作,历史图和列表都有容量限制;分支导航只使用本地分支/标签。
|
|
78
|
+
- 普通文本比较每侧最多 **2MiB**;历史 UTF-8 正文分段最多 **16MiB**。分段阅读不等于完整大文件 Diff。
|
|
79
|
+
- 重命名追溯只沿第一父链识别内容完全相同的重命名;复杂合并、复制或相似重命名可能停止。
|
|
80
|
+
- 图片支持 PNG、基线 JPEG 和简单静态 VP8 WebP;动画、扩展 WebP 等不支持。
|
|
81
|
+
- 支持 UTF-8、GBK、带 BOM 的 UTF-16;不是通用编码检测器。
|
|
82
|
+
- 取消状态/比较请求不保证立即停止底层进程,进程仍受超时和输出上限控制。
|
|
56
83
|
|
|
57
|
-
|
|
58
|
-
- 编码自动识别:UTF-16 LE / BE BOM 优先;其余先严格 UTF-8,再尝试 GBK。带 UTF-8 BOM 的损坏文本不会回退 GBK。无 BOM 的 UTF-16 不保证支持;自动识别并非任意编码检测器。
|
|
59
|
-
- 发现有时间、目录数和仓库数限制;警告或截断不等于没有其他仓库。Git 子模块和 SVN externals 不提供专门的递归管理界面。
|
|
60
|
-
- 工具不可用时检查 PATH;发现授权约 5 分钟后过期,需要手动重新发现。状态已变或 Session 工作目录变化时刷新 / 重新发现。
|
|
61
|
-
- 取消界面请求不保证立即停止正在执行的状态 / 比较子进程;命令仍受各自超时与输出上限约束。
|
|
62
|
-
- 编辑器资源不可用时检查构建与安装包。简化文本比较不等价于 Monaco 的完整功能。
|
|
63
|
-
- 自动化测试不替代真实 DSH 浏览器验收;本说明不宣称已通过特定宿主、浏览器或操作系统的端到端验收。
|
|
84
|
+
## 常见问题
|
|
64
85
|
|
|
65
|
-
|
|
86
|
+
- **找不到仓库**:检查 Session 工作目录和 Git/SVN 的 PATH;更深项目使用相对子目录发现。
|
|
87
|
+
- **提示重新发现**:目录变了或发现授权过期,手动重新发现即可。
|
|
88
|
+
- **高级编辑器加载失败**:确认安装了完整正式包并重新加载宿主;失败时仍可使用基础比较。
|
|
89
|
+
- **SVN 历史连接失败**:先确认是受信任 HTTPS 服务,且不要求本插件未支持的额外认证。
|
|
66
90
|
|
|
67
|
-
|
|
91
|
+
正式版本通过自动测试、Windows/Linux 检查和隔离浏览器回归。**这些不证明你的当前 DSH 页面已加载新版,也不代替你的实际环境验证。**
|
|
68
92
|
|
|
69
|
-
##
|
|
93
|
+
## 开发与更多资料
|
|
70
94
|
|
|
71
|
-
|
|
95
|
+
[文档导航](https://github.com/f-e-n-g-0531/dsh-vcs/blob/main/docs/README.md) · [贡献指南](https://github.com/f-e-n-g-0531/dsh-vcs/blob/main/CONTRIBUTING.md) · [安全说明](https://github.com/f-e-n-g-0531/dsh-vcs/blob/main/SECURITY.md) · [维护者发布流程](<docs/RELEASING.md>)
|
|
72
96
|
|
|
73
|
-
|
|
97
|
+
界面设计参考 [Fork](https://fork.dev/),不代表与 Fork 官方有关联或获得背书。
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
# Third-party notices
|
|
1
|
+
# 第三方许可 / Third-party notices
|
|
2
|
+
|
|
3
|
+
本页说明随包分发的第三方组件许可。下面的许可证原文保持不变;项目自己的非商业许可证不覆盖第三方独立授权的权利。
|
|
2
4
|
|
|
3
5
|
The plugin is governed by the DSH VCS Non-Commercial Source Available License 1.0 in LICENSE. Third-party materials remain under their respective licenses; the plugin license does not restrict the rights those licenses independently grant.
|
|
4
6
|
|