1、从原地址克隆一份裸版本库,比如原本托管于github或oschina,或者是本地的私有仓库
$ git clone --bare https://git.oschina.net/xxx/test1.git ###此步可以在新git服务器,也可以在别的地方
2、 到新的Git服务器上新建一个裸仓库
$ cd /data/git_new/
$ git init --bare new_test1.git
注意: 有界面的仓库,可以直接新建项目。
3、以镜像推送的方式上传代码到新服务器上
$ cd test1.git
$ git push --mirror https://github.com/data/git_new/new_test1.git
到此git仓库迁移完成
4、到新服务器上clone代码到本地
cd /data/git_new/ rm -rf new_test1.git
$ git clone https://github.com/data/git_new/new_test1.git
说明:git clone默认会把远程仓库整个给clone下来,但只会在本地默认创建一个master分支。如果远程还有其他的分支,此时用git branch -a查看所有分支,可以使用checkout命令来把远程分支取到本地,并自动建立tracking
$ git checkout -b localtest origin/remotetest
或者使用-t参数,它默认会在本地建立一个和远程分支名字一样的分支
$ git checkout -t origin/localtest
网友评论