GitHub跨账号上传项目报remote origin already exists的解决方法
报错原因
error: remote origin already exists.报错是因为本地项目目录已经绑定了旧GitHub账号对应的远程仓库地址,Git不允许重复添加同名的origin远程源,直接执行新增origin的命令必然触发报错。
无权限依赖的迁移方案
整个流程不需要登录旧GitHub账号,也不会和旧账号下的原有项目产生关联,步骤如下:
- 清除本地旧远程源绑定
打开项目根目录的命令行终端,执行命令删除原有origin配置:
执行后可运行git remote remove origingit remote -v验证,无任何远程地址输出即代表旧绑定已完全清除。 - 在新GitHub账号下创建全新空仓库,创建时不要勾选初始化README、.gitignore、许可证选项,避免后续推送产生分支冲突。
- 绑定新账号的远程仓库地址,替换命令中的地址为新创建的空仓库地址后执行:
git remote add origin https://github.com/新账号名/新仓库名.git - 若本地项目未做过提交,先执行本地提交:
git add . git commit -m "迁移项目至新账号" - 推送代码到新账号仓库,本地默认分支为main时执行:
若本地默认分支为master,将命令中git push -u origin mainmain替换为master即可。
零配置修改备选方案
如果不想改动本地原有Git配置,可以直接删除项目根目录下的隐藏.git文件夹,将项目转为未初始化Git的普通文件夹,之后重新走初始化、绑定、提交流程即可,操作命令如下:
# 删除.git文件夹后在项目根目录执行 git init git add . git commit -m "首次提交到新账号" git remote add origin 新账号对应的空仓库地址 git push -u origin main
提示:
.git是系统隐藏文件夹,Windows需在文件管理器开启「显示隐藏项目」才可查看,macOS可通过快捷键Command+Shift+.切换隐藏文件显示状态。
内容的提问来源于stack exchange,提问作者Dvora
相关产品推荐
相关产品推荐

