需求:将现有的代码仓库(所有分支)迁移到新的代码仓库,包括历史提交记录、commit记录。
网上都一半一半的,不太靠谱,自己折腾了下,写下来记录下哈哈,希望对你有用。一步一步跟着我照搬肯定没错,试过3个项目亲测可用了......
1·拷贝项目到新的仓库
1、先拷贝远程git到本地:git clone --mirror <替换上你现有的git地址>
2、进入拷贝的目录:cd <替换上拷贝的文件夹名称>
3、设置当前的项目绑定到远程:git remote set-url origin <替换上你要迁移到哪的git地址>
4、提交上去:git push -f origin
到这里已经完成了迁移到新的仓库了!可以在你的迁移地址页面刷新,会看到已经同步的代码,以及分支还有log记录都在上面。
注意:此时打开本地项目会发现刚刚拷到本地的看不到代码,这个是正常的,因为我们使用了--mirror命令,做完以上操作后可以把这整个文件夹删除。
不是真实的代码,我们可以把这整个文件夹删除
此时需要第二个步骤
2·把代码下载到本地
直接git clone <替换上你迁移好的git地址>
完成~~~!
如果需要切换其他分支同时重命名,我这里用的是webstorm,所以直接所截图所示
选择当前远程分支到本地,并切换