PR合并后GitHub派生仓库仍显示提交超前,如何同步?
同步派生仓库与原仓库的步骤
你遇到的upstream未知问题,是因为本地仓库未将原仓库配置为远程仓库。按以下步骤操作即可实现完全同步:
1. 添加原仓库为upstream远程
先查看当前已配置的远程仓库,确认原仓库未被添加:
git remote -v
如果输出里没有原仓库的地址,执行以下命令添加(把<原仓库地址>替换成你派生的原仓库Git地址,比如https://github.com/原作者/原仓库名.git):
git remote add upstream <原仓库地址>
再次执行git remote -v,确认能看到upstream对应的原仓库地址。
2. 拉取原仓库最新代码
拉取原仓库所有分支的最新更新:
git fetch upstream
3. 重置本地分支到原仓库的对应分支
假设要同步的是master分支(如果原仓库默认分支是main,就替换成main),执行重置命令:
git checkout master git reset --hard upstream/master
这个命令会把本地master分支完全覆盖为原仓库master的状态,本地超前的5次提交会被清除,注意:如果本地有未提交的修改会被丢弃,执行前确保本地工作区干净。
4. 强制推送到你的派生仓库
把重置后的本地分支强制推送到自己的派生仓库,覆盖远程的超前提交:
git push --force origin master
如果分支是main就替换成main。
完成以上步骤后,你的派生仓库就会和原仓库完全同步,不会再显示超前提交。
内容的提问来源于stack exchange,提问作者overlappingd
相关产品推荐
相关产品推荐

