Git 仓库迁移
Git 仓库迁移
说明:
这种方式可以保留原版本库中的所有内容,包括 log 信息
步骤
- 从原地址克隆一份裸版本库
$ git clone --bare git://github.com/username/project.git
- –bare:创建的克隆版本库都不包含工作区,直接就是版本库的内容,这样的版本库称为裸版本库
- 到新的Git服务器上创建一个新项目,比如GitCafe
- 以镜像推送的方式上传代码到GitCafe服务器上
$ cd project.git
$ git push --mirror git@gitcafe.com/username/newproject.git
- –mirror:克隆出来的裸版本对上游版本库进行了注册,这样可以在裸版本库中使用gitfetch命令和上游版本库进行持续同步
- 删除本地代码
$ cd ..
$ rm -rf project.git
- 到新服务器GitCafe上找到Clone地址,直接Clone到本地就可以了
$ git clone git@gitcafe.com/usernmae/newproject.git