name: dyad:pr-rebase description: 在当前分支上基于最新的上游更改进行变基,解决冲突并推送。
PR 变基
在当前分支上基于最新的上游更改进行变基,解决冲突并推送。
指令
-
确定 git 远程设置:
git remote -v git branch -vv在 GitHub Actions 中,针对跨仓库 PR:
origin指向 头仓库(fork)- 这是你推送的地方upstream指向 基础仓库 - 这是你变基的基础
对于同一仓库 PR,
origin指向主仓库,可能没有upstream。 -
获取最新更改:
git fetch --all -
变基到基础分支:
如果
upstream远程存在(跨仓库 PR),使用upstream/main,否则使用origin/main:# 检查 upstream 远程是否存在 git remote get-url upstream 2>/dev/null && git rebase upstream/main || git rebase origin/main -
如果存在合并冲突:
-
从变基输出中识别冲突文件
-
读取每个冲突文件,理解双方更改
-
通过编辑文件以适当组合更改来解决冲突
-
暂存已解决的文件:
git add <resolved-file> -
继续变基:
git rebase --continue -
重复直到所有冲突解决且变基完成
-
-
运行 lint 并推送:
运行
/dyad:pr-push技能以运行 lint 检查,修复任何问题,并推送变基后的分支。 -
总结结果:
- 报告变基成功
- 列出任何已解决的冲突
- 注意任何应用的 lint 修复
- 确认分支已推送