本地Git仓库结构与GitHub远端不一致,推送更新子目录、拉取无变化如何解决?
Git推送至错误子仓库问题解决步骤
- 第一步:检查远程仓库绑定配置
执行命令查看当前仓库绑定的远程地址:git remote -v
核对返回结果中origin对应的push、fetch地址,确认是否为你预期的父仓库地址,若显示为子仓库地址即为配置错误。 - 第二步:修改远程仓库地址
执行命令将远程地址替换为父仓库的正确GitHub地址(支持HTTPS、SSH格式):git remote set-url origin <替换为你的父仓库地址> - 第三步:校验分支上游绑定关系
执行命令查看当前分支对应的上游分支配置:git branch -vv
若当前主分支(通常为main或master)绑定的上游不是父仓库的对应分支,执行命令修正:git branch --set-upstream-to=origin/main main
(若你的主分支命名为master,将命令中两处main替换为master即可) - 第四步:同步并验证操作
先执行pull同步远程父仓库内容,如有冲突请先解决冲突:git pull
确认本地内容无误后执行push即可推送至正确的父仓库:git push - 额外排查场景
若上述操作后问题仍存在,检查仓库根目录是否存在.gitmodules文件,该文件为Git子模块配置文件,若存在且配置了子仓库绑定规则,删除该文件后执行git add . && git commit -m "remove invalid submodule config"提交变更,再重新推送即可。
问题参考截图
本地仓库结构

GitHub错误更新位置

内容的提问来源于stack exchange,提问作者cyruslk
相关产品推荐
相关产品推荐

