起因是派生了某个代码库,期间修改了些代码并发起了合并请求。
但上游代码并没有合并成功,采用了人工合并的方式。这就造成了我派生的代码领先于上游代码,其实代码是一样的。
尝试重置代码再提交,但提示:
错误:无法推送一些引用到 ****。
经过核实,原来分支被保护了。
在“项目设置”,“仓库”中,找到“分支规则”,找到分支,如“main”分支,点击“查看详情”,选择“允许强制推送”。
之后执行如下命令:
# 添加上游仓库作为远程(git 或 https 地址均可) git remote add upstream 你的上游仓库地址 # 获取上游更改 git fetch upstream # 确保你在主分支(通常是main或master) git checkout main # 或 git checkout master # 将本地分支重置为与上游完全一致 git reset --hard upstream/main # 或 upstream/master # 强制推送 git push origin main --force # 或 git push origin master --force
再到 giblib 中,查看你的项目,就会提示:
派生自 **** 与上游代码库保持同步。