当更改新的 git 仓库地址时,不要着急执行 clone 应该先运行这个

前段时间,我们团队的 git 仓库需要迁移到新的地址,有团队小伙伴是这么操作的

  • 找一个新目录,git clone 新的仓库地址
  • 将现有的本地项目文件复制到这个新目录中
  • 执行 git add . and git commit -m "init"
  • 然后 push 到新的仓库地址

但是这样做有一个问题,就是迁移到新的仓库后,你之前的历史记录都没有了,有没有一个办法可以解决这个问题呢,答案是肯定的,我们应该这么做

  • 在现有项目的根目录下运行如下代码
bash 复制代码
git remote add other http://xxxx/yyy/zzz.git

其中上面的地址,是你的新的仓库的远程地址

  • 假设你现在的分支是 main ,你需要执行如下代码
bash 复制代码
git push other main
  • 如果你有其他分支,你可以切换分支后,执行同样的操作
bash 复制代码
git checkout dev
git push other dev
  • 这个时候,你可以删除之前的仓库地址
bash 复制代码
git remote rm origin

现在你的远程仓库就替换好了,当你打开你的远程仓库的时候,就可以看到你的历史提交都还在,多么巴适啊

知识点

我们平时用的远程仓库名一般命名为 origin ,其实他可以命名为其他名字,它就跟变量一样,只是一个标识符,完全可以换成另外一个

相关推荐
goodspeed10 小时前
Git Worktree:多分支并行开发的利器
git·github
雮尘2 天前
让 AI Agent 高效并行开发的命令-git worktree
人工智能·git·agent
南果梨3 天前
OpenClaw 完整教程!从安装到使用(官方脚本版)
前端·git·开源
Selicens4 天前
git批量删除本地多余分支
前端·git·后端
闲云一鹤5 天前
Git LFS 扫盲教程 - 你不会还在用 Git 管理大文件吧?
前端·git·前端工程化
vibecoding日记8 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记8 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger9 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP10 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet