-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
问题描述
dev2merge / pr-codex-bot 流程在 gh pr merge 完成后,没有将远程合并结果同步回本地 main 分支。导致远程 main 已更新,但本地 main 仍停留在合并前的旧 commit。
复现步骤
- 在 feature branch 上完成开发,push 到 origin
gh pr create创建 PRgh pr merge --merge --admin合并 PR(远程操作)- 此时本地
main仍指向旧 commit,git log --oneline -1 main与gh pr view --json mergedAt不一致
期望行为
gh pr merge 成功后,dev2merge 流程应自动执行:
git fetch origin
git checkout main
git merge origin/main --ff-only确保本地 main 与远程一致,避免后续操作基于过期的本地 main 状态。
影响范围
- dev2merge skill: merge 步骤末尾缺少本地同步
- pr-codex-bot skill: 如果有 post-merge 操作依赖本地 main 状态,也会受影响
- commit skill (Rule 015): "Git atomicity: commit→push→PR→merge is a transaction — verify each step" — 当前 merge 步骤的验证不完整,只确认了远程状态,未验证本地状态
建议修复
在 dev2merge 和 pr-codex-bot 的 PATTERN.md / workflow.toml 中,gh pr merge 步骤之后添加:
# Post-merge: sync local main
git fetch origin
git checkout main
git merge origin/main --ff-only
git log --oneline -1 # verify local matches remote
实际案例
- 项目:
RyderFreeman4Logos/fluctlight - PR: https://github.com/RyderFreeman4Logos/fluctlight/pull/2
- 分支:
feat/fluctlight-core→main - 现象:
gh pr merge 2 --merge --admin成功,gh pr view 2显示 MERGED,但本地git log --oneline -1 main仍为旧 commit1b805ae,需要手动git fetch + git merge --ff-only才能同步
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels