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

相关推荐
电化学仪器白超2 小时前
小乌龟Git全程图形化操作指南:嵌入式本地版本管理与Gitee私有云备份实战
git·python·单片机·嵌入式硬件·物联网·gitee·自动化
K3v5 小时前
【git】删除本地以及远端已经合并到master的分支
大数据·git·elasticsearch
云攀登者-望正茂9 小时前
将 develop 分支拉取到特性分支时解决合并污染问题
git
金銀銅鐵12 小时前
[git] 如何找到已经“丢失”的 commit?
git·后端
尘世壹俗人12 小时前
linux编译安装git
linux·运维·git
打不了嗝 ᥬ᭄1 天前
Git 原理与使用
git·gitee
m0_614619061 天前
花了一下午学 Git,整理了一份学习笔记
笔记·git·学习
AGV算法笔记1 天前
解决Git> git add -A -- fatal: CRLF would be replaced by LF in Test/Test.cpp
git
Dontla1 天前
VSCode插件Git Graph介绍(Git可视化管理分支、可视化Git)
ide·git·vscode
Echoo华地1 天前
用git diff快速比较文件夹差异并生成报告
linux·git·unix·repository·diff·branch