推送分支并创建PR需先执行git push -u origin your-branch-name,再在GitHub网页点击Compare & pull request按钮;确保分支名、目标分支正确,等待同步完成后再刷新页面。
怎么从本地分支推送到 GitHub 并发起 PR
PR 不是本地命令,本质是「先推送分支 + 后在网页点按钮」。你本地
成功后,GitHub 会自动识别新分支并在仓库主页弹出绿色 Compare & pull request 按钮。
必须先有远程仓库(
),且已通过
关联
推送时用
,带
才能建立上游跟踪,后续
直接生效
别直接推到
或
—— PR 要求目标分支是受保护的,推不上去反而卡住
为什么点了 Create Pull Request 却看不到自己的提交
常见于推送后立刻刷新页面却没更新,或 PR 显示 “There isn’t anything to compare”。根本原因是:GitHub 还没同步完,或分支名/目标分支选错了。
检查右上角分支选择器是否切到了你的新分支(不是
);对比目标(base)分支是否选对,比如想合入
却误选了
刚
完等 5–10 秒再刷新,GitHub 有时有短暂延迟
如果本地 commit 没
或
,或者
时漏了
和分支名(如只输
),远程根本没收到任何东西
PR 描述里写什么才不容易被拒
维护者扫一眼就决定要不要点进去看代码。空描述、只写 “fix bug” 或贴一长串日志,基本会被打回重写。
GitHub Copilot
GitHub AI编程工具,实时编程建议
下载
第一行用短句说明「做了什么」,比如:
或
下面空一行,用简练中文写清楚:
问题现象
(比如 “点击头像跳转 404”)、
改动思路
(比如 “加了路由守卫判断用户状态”)、
是否影响其他模块
(比如 “不影响登录流程,但依赖
hook v2.1+”)
避免写“已测试”——要写具体测了什么,比如:
本地改完代码,怎么更新已发的 PR
PR 是动态绑定分支的,不是快照。只要继续往同一个分支 push,PR 页面会自动追加新 commit,无需重新创建。
确保还在原分支(
),别切错成
常规流程:
→
→
(不用带参数,因为之前用了
)
如果被要求 rebase,别直接
—— 先
,解决冲突后再
,避免覆盖别人提交
最常被忽略的一点:PR 的标题和描述不会自动更新,每次补充逻辑或修复后,手动编辑 PR 描述补上变更说明,不然 Reviewer 只能看到 Git 提交历史,很难快速对齐上下文。
git pushorigingit remote add origin git push -u origin your-branch-name-ugit pushmainmastermaindevelopmaingit pushgit addgit commitpushorigingit pushfeat: add retry logic to apiFetchfix: prevent null ref in UserProfileuseAuth✓ 登录态下点击跳转正常 ✓ 游客点击跳转到登录页git checkout your-branch-namemaingit add .git commit -m "chore: update PR per review"git push-ugit push --forcegit pull --rebase origin/maingit push --force-with-lease