Git-仓库迁移
需求:将现有仓库迁移到新的仓库,包括log信息。
方法一:切换remote_url
即本地仓库内容不变,远程新建仓库,将本地仓库指向远程新仓库地址。
操作方法:
- 远程新仓库地址:
git remote set-url origin
- 保证本地与远程新仓库的提交版本同步:
git push
该方法比较直接,直接更改.git/conf配置文件里的ip地址。
方法二:git push --mirror
即以镜像推送的方式迁移仓库。
如版本库名字为GiteeTest,操作方法:
- 在本地旧仓库中,从服务器旧仓库地址clone一份裸版本库:
git clone —bare 服务器旧仓库地址
注1:–bare创建的克隆版本库不包含工作区,直接是服务器版本库的内容,这样的版本库成为裸版本库(名称为GiteeTest.git)。
注2:这样本地仓库中会出现一个裸板仓库“GiteeTest.git”文件夹。 - 服务器创建新的仓库NewRepository。
- 进入裸版本库“GiteeTest.git”:
cd GiteeTest.git
- 以镜像的推送方式上传代码到服务器新仓库:
git push --mirror NewRepository地址
这样就服务器新仓库中已经有了同样一份代码 - 删除本地裸板仓库”GiteeTest.git”:
rm -rf GiteeTest.git
- clone新服务器仓库代码(在任何目录clone):
git clone NewRepository地址
这样就完成了仓库的迁移。