SuperAPI AI 工具集

git-sync-upstream

编程与开发

查看项目

更新于 10-16 01:37

技能介绍

用途:把当前分支 rebase 到 upstream/main 最新代码,适用于 fork 仓库同步上游更新、更新 PR 分支等场景。

主要能力:先做前置检查(git remote -v、git branch --show-current、检查是否存在 upstream remote);随后 git fetch upstream,并用 git log upstream/main..HEAD --oneline 与 git log HEAD..upstream/main --oneline 查看双方提交,若上游无新提交则直接结束。

用法流程:Step 1 获取上游代码;Step 2 查看更新并判断是否需要同步;Step 3 用 git status 检查未提交更改,让用户选择 stash 后 rebase(git stash push -m "temporary stash before rebase")、先提交再 rebase,或放弃更改;Step 4 执行 git rebase upstream/main,遇冲突则列出文件、指导解决后 git rebase --continue(放弃用 git rebase --abort);Step 5 如已 stash 用 git stash pop 恢复;Step 6 展示 git log --oneline -5 并在用户确认后 git push origin <branch-name> --force。

限制与提示:强制推送会改写历史,必须先获得用户确认;未配置 upstream 时用 git remote add upstream <upstream-repo-url> 添加。推送被拒时可先 git pull origin <branch> --rebase 再强制推送。upstream 地址、分支命名等需按实际情况填写。