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

相关推荐
i建模18 小时前
安装 `openclaw@2026.3.1` 时遇到了 Git 仓库访问权限问题
git
freewlt20 小时前
git配置文件名称大小写
git
小熊熊知识库1 天前
Git工具使用
git
春夜喜雨1 天前
Git 分支merge合并常用步骤与命令操作
git
秦时明月之君临天下1 天前
Git查看分支创建时间
git
liuxin_07251 天前
phpstorm 操作git 分支合并到master
ide·git·phpstorm
cyforkk1 天前
Git 进阶技巧:优雅合并初始提交与 Commit 规范详解
git
Elcker1 天前
修改Git指定提交作者与时间
git
❀͜͡傀儡师1 天前
Apifox投毒事件深度分析报告:供应链攻击窃取SSH密钥与Git凭据
git·ssh·apifox
云梦谭1 天前
Git 环境定制常用命令
git