Skip to content

Commit e677d31

Browse files
committed
fix: 统一项目 .gitflow 存储并兼容迁移旧状态
1 parent d04262e commit e677d31

40 files changed

Lines changed: 607 additions & 69 deletions

File tree

‎.agents/plugins/marketplace.json‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,20 @@
99
"source": {
1010
"source": "url",
1111
"url": "https://github.com/full-stack-plugins/gitflow-plugin.git",
12-
"ref": "v0.1.4"
12+
"ref": "v0.1.5"
1313
},
1414
"policy": {
1515
"installation": "AVAILABLE",
1616
"authentication": "ON_USE"
1717
},
1818
"category": "Developer Tools",
19-
"version": "0.1.4",
19+
"version": "0.1.5",
2020
"description": "按项目约定治理 Git 分支、提交与流转,九技能加确定性门禁",
21-
"icon": "https://cdn.jsdelivr.net/gh/full-stack-plugins/gitflow-plugin@v0.1.4/assets/logo.png",
21+
"icon": "https://cdn.jsdelivr.net/gh/full-stack-plugins/gitflow-plugin@v0.1.5/assets/logo.png",
2222
"interface": {
2323
"displayName": "GitFlow",
2424
"shortDescription": "项目 Git 分支规范治理",
25-
"logo": "https://cdn.jsdelivr.net/gh/full-stack-plugins/gitflow-plugin@v0.1.4/assets/logo.png"
25+
"logo": "https://cdn.jsdelivr.net/gh/full-stack-plugins/gitflow-plugin@v0.1.5/assets/logo.png"
2626
}
2727
}
2828
]

‎.claude-plugin/plugin.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gitflow",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"description": "按项目约定治理 Git 分支、提交与流转,九技能加确定性门禁",
55
"author": {
66
"name": "Full Stack Skills"

‎.codex-plugin/plugin.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gitflow",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"description": "按项目约定治理 Git 分支、提交与流转,九技能加确定性门禁",
55
"author": {
66
"name": "Full Stack Skills"

‎.zcode-plugin/plugin.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gitflow",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"description": "按项目约定治理 Git 分支、提交与流转,九技能加确定性门禁",
55
"author": {
66
"name": "Full Stack Skills"

‎CHANGELOG.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# 更新记录
22

3+
## 0.1.5 — 2026-10-07
4+
5+
- 项目数据统一到 `.gitflow/`;state/ 保存并排除本机快照、来源、日志与原生运行时。
6+
- worktree 共用状态锚点、隔离操作日志,核实 separate-git-dir 的真实项目根。
7+
- 旧布局只读兼容,显式 apply 迁移并保留备份;拒绝冲突和自定义 Hook 覆盖。
8+
- 同步 git-skills 0.1.1 的九技能契约。
9+
310
## 0.1.4 — 2026-10-07
411

512
- 修复 Python 3.11 原生 Hook CLI 解析 `--` 及后续位置参数的兼容性;混合参数使用 parse_intermixed_args。

‎README.md‎

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<img src="assets/logo.png" width="160" alt="GitFlow 分支与汇合标志">
44

5-
让 AI 按项目约定使用 Git:仅在 Git 项目中自动触发,进入项目先识别管理状态与规则,提交前校验角色,创建分支检查基线,发布逐目标记录回灌。当前版本 0.1.4,Python 3.11+、Git 2.41+、macOS/Linux,无运行时第三方依赖。
5+
让 AI 按项目约定使用 Git:仅在 Git 项目中自动触发,进入项目先识别管理状态与规则,提交前校验角色,创建分支检查基线,发布逐目标记录回灌。当前版本 0.1.5,Python 3.11+、Git 2.41+、macOS/Linux,无运行时第三方依赖。
66

77
九技能来自独立 git-skills 包;插件内是锁定副本。可移植根 plugin.json/mcp.json 遵循 Agent Plugins 1.0.0。Claude/Codex/ZCode 清单是宿主兼容产物;本次未安装到宿主,不能据此宣称宿主自动加载、事件格式或持久化目录已经验收。
88

@@ -54,9 +54,25 @@ python3 /absolute/gitflow-plugin/scripts/gitflow.py gate PROJECT --action commit
5454

5555
## 项目规范与存储
5656

57-
共享定义是 .gitflow/workflow.json,Markdown 是生成说明;建议随正常代码交付版本化。Git common-dir/gitflow/activation.json 保存确认快照与摘要;origins.json 保存插件创建来源;当前 Git dir/gitflow/journal.json 保存当前 worktree 操作步骤。绝不拼接项目 .git 作为唯一目录。local 模式只存元数据,不随 clone 分发。
57+
项目数据统一放在仓库根目录 `.gitflow/`:
5858

59-
规则支持闭合的角色、命名、长期覆盖、允许提交、创建来源、合入目标、合并与消息策略、主远端和协作模式。候选变更不会直接弱化门禁,激活时修订递增。例外必须通过明确候选修订;没有临时 --no-verify 参数。用户可直接改 Git 元数据或禁用 Hook,因此这不是对拥有本机写权限用户的安全隔离。
59+
```text
60+
.gitflow/
61+
workflow.json # 共享规则定义,建议提交
62+
workflow.md # 生成说明
63+
state/ # 本机状态,Git 本地 exclude 排除
64+
activation.json # 已确认规则与摘要
65+
origins.json # 分支创建来源
66+
worktrees/<id>/journal.json # 各工作树独立日志
67+
native-runtime/ # 可选的原生 Hook 运行时
68+
legacy/<id>/ # 旧状态迁移备份
69+
```
70+
71+
多个 worktree 共用锚定工作树的 state/;Git 本地 `gitflow.statePath` 保存相对定位信息,支持 `.git` 文件与 separate-git-dir。local 模式仅写 state/,不生成共享定义、不随 clone 分发。原生入口仍由 Git 自己的 hooks 目录触发。锚定工作树不可用时返回未验证,不静默创建另一套规则。
72+
73+
旧 Git 目录中的 `gitflow/` 保持只读兼容,首次显式 `--apply`(包括重复 `init`)迁移到上述目录并保留备份。新旧数据冲突、符号链接或已编辑的原生 Hook 会阻止自动迁移;读取和预览不迁移。
74+
75+
规则支持闭合的角色、命名、长期覆盖、允许提交、创建来源、合入目标、合并与消息策略、主远端和协作模式。候选变更不会直接弱化门禁,激活时修订递增。例外必须通过明确候选修订;没有临时 --no-verify 参数。用户可直接改本机状态或禁用 Hook,因此这不是对拥有本机写权限用户的安全隔离。
6076

6177
八模板及来源见 profiles/、sources.json。Fork 作为独立协作模式;模板命名、main 映射和保护为项目约定。trunk-based 是受审查短分支变体,分支寿命/数量是协作目标,首版不声称已自动度量。Git-maintainer 与 Microsoft 传播方向分别建模。
6278

@@ -84,15 +100,15 @@ PreToolUse 按 `git -C`(含 `-Cpath`)及简单 `cd &&` 的实际目标检测
84100
python3 -m unittest discover -s tests -p "test_*.py"
85101
python3 scripts/validate_package.py
86102
python3 scripts/vendor_skills.py --check
87-
python3 scripts/package.py --output /absolute/output/gitflow-0.1.4.zip
103+
python3 scripts/package.py --output /absolute/output/gitflow-0.1.5.zip
88104
```
89105

90-
validator 使用标准库核对结构、路径、版本、技能与模板摘要;开发时另用已存在的 jsonschema 验证官方 schema。发布前更新独立技能包再显式 vendor;项目源码已推送 GitHub;发布来源与资产固定到 v0.1.4。
106+
validator 使用标准库核对结构、路径、版本、技能与模板摘要;开发时另用已存在的 jsonschema 验证官方 schema。发布前更新独立技能包再显式 vendor;项目源码已推送 GitHub;发布来源与资产固定到 v0.1.5。
91107

92108
[规格与验收](docs/superpowers/specs/2026-10-07-gitflow.md);[验证报告](docs/verification.md)。真实临时本地/bare 远端测试与宿主安装、托管保护、CI、生产发布是不同证据。
93109

94110
## 市场与视觉资产
95111

96-
GitFlow 已收录到 [Full Stack Plugins](https://github.com/partme-ai/full-stack-plugins),版本 v0.1.4。Codex、ZCode、Kimi 市场清单固定到同一 tag 与正式 Release。Kimi 适配提供九技能和 stdio MCP;宿主事件 Hook 接线与三个宿主的实际安装加载仍未验证。
112+
GitFlow 已收录到 [Full Stack Plugins](https://github.com/partme-ai/full-stack-plugins),版本 v0.1.5。Codex、ZCode、Kimi 市场清单固定到同一 tag 与正式 Release。Kimi 适配提供九技能和 stdio MCP;宿主事件 Hook 接线与三个宿主的实际安装加载仍未验证。
97113

98114
Logo 基于 Jason Long 创作的 Git 官方标志二次创作:保留橙色菱形,以直线主干、平行分支与斜向汇合表现工作流。原始标志与衍生图像按 CC BY 3.0 署名,代码仍为 Apache-2.0。GitFlow 是独立插件,无 Git 项目官方背书。来源、许可和生成提示见 [资产说明](assets/README.md)。

‎dist/gitflow-0.1.5.delivery.json‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"version": "0.1.5",
3+
"repository": "https://github.com/full-stack-plugins/gitflow-plugin",
4+
"tag": "v0.1.5",
5+
"sha256": "e408e4a95bd21cef24df29ae57b69ee783024e6f6dd921ae545d0f5eaa80c370",
6+
"bytes": 359436,
7+
"local_validation": {
8+
"all_tests": 91,
9+
"storage_tests": 10,
10+
"vendor_files": 90,
11+
"manifest_mcp_version": "0.1.5"
12+
},
13+
"source_evidence": "docs/evidence/storage-layout-v0.1.5.json",
14+
"host_installation": "unverified",
15+
"ci": "query exact published commit"
16+
}

‎dist/gitflow-0.1.5.zip‎

351 KB
Binary file not shown.

0 commit comments

Comments
 (0)