@klarkxy/dsh-git-commit 0.2.0 → 0.2.2

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 CHANGED
@@ -1,4 +1,6 @@
1
- # @klarkxy/dsh-git-commit
1
+ # @klarkxy/dsh-git-commit
2
+
3
+ <!-- release-state-note -->
2
4
 
3
5
  Commit workspace changes to git without leaving the chat. Every conversation
4
6
  thread gets a **Commit** action in its header: click it, check the branch, the
@@ -10,7 +12,7 @@ directory.
10
12
 
11
13
  ## Install
12
14
 
13
- Requires Node.js ≥22. Install the published package into the target profile
15
+ Requires Node.js ≥22 (26 verified). Install the published package into the target profile
14
16
  with the DSH plugin manager; the install also enables the `git-commit` entry:
15
17
 
16
18
  ```sh
@@ -20,15 +22,6 @@ dsh plugin --profile web add @klarkxy/dsh-git-commit
20
22
  Replace `web` with your profile name. Installation or removal may require a
21
23
  restart when the host asks for one.
22
24
 
23
- To install a source checkout of this repository instead, pack it first and add
24
- the archive:
25
-
26
- ```sh
27
- cd plugins/dsh-git-commit
28
- npm pack --ignore-scripts
29
- dsh plugin --profile web add "<absolute path to the .tgz>"
30
- ```
31
-
32
25
  To uninstall:
33
26
 
34
27
  ```sh
@@ -69,6 +62,16 @@ nothing.
69
62
  The button is disabled while the session is running. The host checks again
70
63
  before committing, and stops the run if the workspace changes during planning.
71
64
 
65
+ If a later group fails or the run is cancelled, completed commits stay in place.
66
+ The panel shows those commits, the remaining groups and the stopping reason,
67
+ then refreshes repository status. A commit whose hash could not be read is
68
+ marked explicitly. It never rolls back completed commits or retries them
69
+ automatically. Unloading the plugin cancels in-flight planning and rejects new
70
+ runs while existing cleanup finishes.
71
+ If a rejected Git command leaves HEAD changed or unreadable, its group's outcome
72
+ is marked uncertain without attributing a commit to the plugin. Check Git log
73
+ and status before acting on that group; it is separate from groups not executed.
74
+
72
75
  ## Notes
73
76
 
74
77
  - Each selected file is committed from its current worktree content. Pre-staged
@@ -1,4 +1,6 @@
1
- # @klarkxy/dsh-git-commit
1
+ # @klarkxy/dsh-git-commit
2
+
3
+ <!-- release-state-note -->
2
4
 
3
5
  在对话里直接把工作区修改提交到 git。每个对话线程的右上角都有一个 **提交** 按钮:
4
6
  点一下打开弹层,确认分支、文件数量和将使用的模型,再点一下即可把会话工作目录
@@ -8,7 +10,7 @@
8
10
 
9
11
  ## 安装
10
12
 
11
- 需要 Node.js ≥22。用 DSH 插件管理器把已发布包装进目标 profile,安装即启用
13
+ 需要 Node.js ≥22(已验证 26)。用 DSH 插件管理器把已发布包装进目标 profile,安装即启用
12
14
  `git-commit` 入口:
13
15
 
14
16
  ```sh
@@ -17,14 +19,6 @@ dsh plugin --profile web add @klarkxy/dsh-git-commit
17
19
 
18
20
  把 `web` 换成你的 profile 名。安装或卸载后宿主可能要求重启。
19
21
 
20
- 要装本仓库的源码,先打包再添加归档:
21
-
22
- ```sh
23
- cd plugins/dsh-git-commit
24
- npm pack --ignore-scripts
25
- dsh plugin --profile web add "<归档绝对路径>"
26
- ```
27
-
28
22
  卸载:
29
23
 
30
24
  ```sh
@@ -52,6 +46,13 @@ dsh plugin --profile web remove @klarkxy/dsh-git-commit
52
46
 
53
47
  会话运行期间按钮不可用。宿主在提交前还会再检查一次,规划期间工作区发生变化时会中止本次提交。
54
48
 
49
+ 后续分组失败或执行被取消时,已经完成的提交仍然保留。面板显示这些提交、剩余
50
+ 分组和停止原因,再刷新仓库状态;已创建但未能读回哈希的提交会明确标注。
51
+ 插件不会回滚已完成的提交,也不会自动重试。卸载插件会取消正在进行的规划,
52
+ 拒绝新的执行,并等待已有操作完成清理。
53
+ 如果 Git 命令报错后 HEAD 已变化或无法读回,对应分组会标为“结果不确定”,不擅自
54
+ 归属某个提交。请先检查 Git 日志和状态;这一组与尚未执行的分组分开显示。
55
+
55
56
  ## 说明
56
57
 
57
58
  - 每个选中文件按当前工作区内容提交。属于其他分组的已暂存修改会保留到对应分组提交。