当更改新的 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 ,其实他可以命名为其他名字,它就跟变量一样,只是一个标识符,完全可以换成另外一个

相关推荐
4***V2023 小时前
GitLab Pages配置
git·gitlab·github
CelineCoding3 小时前
git 处理异常操作
git
E***q5394 小时前
Git版本控制常见问题
git
sulikey9 小时前
从入门到精通:如何自己编写高质量的 .gitignore(面向工程实践)
git·gitee·编辑器·gitlab·github·gitignore·gitattributes
青靴12 小时前
轻量级 CI/CD:Git Hooks 自动部署 Node.js 应用(CICD-demo)
git·ci/cd·node.js
哟哟耶耶14 小时前
git-git cherry-pick(从分支挑选特定提交-哈希值)更改应用到当前分支
git
无限进步_15 小时前
C语言动态内存管理:掌握malloc、calloc、realloc和free的实战应用
c语言·开发语言·c++·git·算法·github·visual studio
程序员馨馨20 小时前
git常用命令学习以及冲突解决
git·功能测试·学习
1***81531 天前
Git游戏开发案例
git
likuolei1 天前
Git 工作区、暂存区和版本库
数据库·git