Git 仓库搬家后,如何让本地仓库“认新家”?——小白也能看懂的远程地址修改指南
Git 仓库搬家后如何让本地仓库“认新家”——小白也能看懂的远程地址修改指南一句话总结当你的 Git 仓库迁移到新地址后只需更新本地仓库的“通讯录”并告诉 Git “以后默认推送到新家”即可无缝切换。 写在前面仓库迁移是什么想象一下你原来住在老小区旧 Git 仓库现在搬到了新小区新 Git 仓库。虽然你的家具和物品代码都还在但快递员git push不知道新地址每次送东西还是会送到老地方。这时你需要做两件事更新通讯录—— 告诉 Git 新仓库的地址。设置默认路线—— 以后每次执行git push都自动往新家送。本文会带你一步步完成这两个操作全程用大白话零基础也能跟上。 第一步看看你现在连的是哪个仓库打开终端命令行进入你的项目目录输入gitremote-v你会看到类似这样的输出origin https://old-git.com/yourname/old-repo.git (fetch) origin https://old-git.com/yourname/old-repo.git (push)这里的origin是远程仓库的别名默认就叫 origin后面的 URL 就是当前仓库的地址。如果你的输出显示的是旧地址那说明还没更新。✏️ 第二步修改远程仓库地址执行以下命令把origin的地址改成新仓库的 URLgitremote set-url origin新仓库地址例如gitremote set-url origin https://new-git.com/yourname/new-repo.git注意新仓库地址可以是 HTTPS 或 SSH 格式看你用哪种方式认证。如果你还不知道新地址去 Git 服务商GitHub、GitLab、Gitee 等上找到仓库的“Clone”按钮复制地址即可。 第三步确认修改成功再次运行git remote -v检查输出是否变成了新地址origin https://new-git.com/yourname/new-repo.git (fetch) origin https://new-git.com/yourname/new-repo.git (push)大功告成现在你的本地仓库已经知道新家在哪里了。 第四步设置默认推送让git push更省心如果你现在执行git pushGit 可能会提示你没有设置上游分支upstream或者直接推送到新仓库但需要你指定分支。为了让以后的推送更简单我们设置一下默认跟踪关系。方法一推送时同时设置上游推荐对于当前正在工作的分支比如main执行gitpush-uorigin main-u是--set-upstream的缩写表示建立本地分支与远程分支的关联。执行后以后只要输入git pushGit 就会自动推送到origin/main。如果你有多个分支每个分支第一次推送时都用-u即可。方法二全局配置推送行为适合多分支如果你希望所有分支的git push都默认推送到同名的远程分支可以设置gitconfig--globalpush.default current这样无论你在哪个分支输入git push都会把当前分支推送到远程同名的分支如果远程没有同名分支会报错需要先创建。 小知识Git 2.0 以后默认的push.default是simple它要求本地分支和远程分支同名并且会检查是否已设置上游。如果你用的是simple那只要用-u设置过一次后续git push就够用了。 第五步测试一下现在尝试推送一次gitpush如果一切正常你会看到 Git 把本地提交推送到新仓库并且终端会显示成功信息。如果不放心可以打开浏览器去新仓库的网页上刷新看看代码应该已经在了。 常见问题 小贴士❓ 新仓库是空的推送时提示“failed to push some refs”这是因为新仓库可能还没有任何提交而你本地有历史。解决方法如果新仓库完全空连 README 都没有直接推送即可。如果新仓库已经有一个初始提交比如自动生成了 README、.gitignore你需要先合并一下gitpull origin main --allow-unrelated-histories然后再推送。--allow-unrelated-histories是让 Git 允许两个没有共同祖先的分支合并。❓ 我想保留旧仓库地址同时添加新地址比如你想同时推送到两个远程仓库备份可以添加第二个远程别名gitremoteaddbackup https://new-git.com/yourname/new-repo.git然后推送时指定别名gitpush backup main❓ 我忘了新仓库地址或者想再改一次重复第二步即可set-url会覆盖原来的地址。❓ 推送时提示权限错误Permission denied如果你用的是 SSH 地址请确认你的 SSH 公钥已经添加到新仓库的账户设置中。如果是 HTTPS 地址可能需要输入用户名和密码或个人访问令牌。 总结步骤命令作用查看当前地址git remote -v确认当前连的是哪个仓库修改地址git remote set-url origin 新URL更新远程仓库地址验证修改git remote -v检查是否更新成功设置上游git push -u origin 分支名让以后git push默认推送到新仓库测试推送git push确认一切正常仓库迁移并不可怕只需更新一下“通讯录”再给 Git 一个“默认路线”一切就能照常运行。希望这篇指南能帮到你如果有任何疑问欢迎在评论区留言我们一起讨论延伸阅读Git 官方文档 - remoteGit 官方文档 - push.defaultHappy coding!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2483120.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!