[aide] flow-design: 流程图设计完成
This commit is contained in:
76
.aide/diagrams/git-branch-finish-logic.puml
Normal file
76
.aide/diagrams/git-branch-finish-logic.puml
Normal file
@@ -0,0 +1,76 @@
|
||||
@startuml git-branch-finish-logic
|
||||
!theme plain
|
||||
title 程序逻辑流图:aide flow finish 安全合并
|
||||
|
||||
start
|
||||
|
||||
:FlowTracker.next_part("finish", summary);
|
||||
|
||||
partition "分支合并准备" {
|
||||
:从 FlowStatus 获取分支信息;
|
||||
note right
|
||||
- source_branch
|
||||
- start_commit
|
||||
- task_branch (当前分支)
|
||||
end note
|
||||
|
||||
:记录 end_commit = rev_parse_head();
|
||||
}
|
||||
|
||||
partition "检测源分支变更" {
|
||||
:GitIntegration.has_commits_since(start_commit, source_branch);
|
||||
|
||||
if (源分支有新提交?) then (是)
|
||||
partition "创建临时分支处理" {
|
||||
:从 start_commit 检出临时分支;
|
||||
:temp_branch = task_branch + "-merge";
|
||||
:git checkout -b temp_branch start_commit;
|
||||
|
||||
:在临时分支执行 squash 合并;
|
||||
:git merge --squash task_branch;
|
||||
:git commit -m "任务压缩提交";
|
||||
|
||||
:BranchManager.record_branch_finish();
|
||||
note right
|
||||
status: "merged-to-temp"
|
||||
temp_branch: temp_branch
|
||||
end note
|
||||
|
||||
:输出警告;
|
||||
note right
|
||||
"⚠ 源分支有新提交"
|
||||
"已在临时分支完成合并"
|
||||
"请手动处理后续操作"
|
||||
end note
|
||||
}
|
||||
else (否)
|
||||
partition "正常合并流程" {
|
||||
:切回源分支;
|
||||
:git checkout source_branch;
|
||||
|
||||
:软重置到起始提交;
|
||||
:git reset --soft start_commit;
|
||||
|
||||
:创建压缩提交;
|
||||
:git add .;
|
||||
:git commit -m "[aide] 任务: {summary}";
|
||||
|
||||
:BranchManager.record_branch_finish();
|
||||
note right
|
||||
status: "finished"
|
||||
end_commit: 新提交哈希
|
||||
end note
|
||||
}
|
||||
endif
|
||||
}
|
||||
|
||||
partition "更新分支概况" {
|
||||
:BranchManager.save_branches();
|
||||
note right: 同时生成 JSON 和 MD
|
||||
}
|
||||
|
||||
:继续原有 finish 逻辑;
|
||||
|
||||
stop
|
||||
|
||||
@enduml
|
||||
Reference in New Issue
Block a user