1佃蚜、從原地址克隆一份裸版本庫躏惋,比如原本托管于github或oschina,或者是本地的私有倉庫
$ git clone --bare https://git.oschina.net/xxx/test1.git ###此步可以在自己電腦上
2莹汤、 到新的Git服務(wù)器上新建一個(gè)裸倉庫
$ cd /data/git_new/
$ git init --bare new_test1.git
注意: 有界面的倉庫泣棋,可以直接新建項(xiàng)目。
3谦去、以鏡像推送的方式上傳代碼到新服務(wù)器上
$ cd test1.git
$ git push --mirror https://github.com/data/git_new/new_test1.git
到此git倉庫遷移完成
4慷丽、到新服務(wù)器上clone代碼到本地
rm -rf new_test1.git
$ git clone https://github.com/data/git_new/new_test1.git
說明:git clone默認(rèn)會(huì)把遠(yuǎn)程倉庫整個(gè)給clone下來,但只會(huì)在本地默認(rèn)創(chuàng)建一個(gè)master分支鳄哭。如果遠(yuǎn)程還有其他的分支要糊,此時(shí)用git branch -a查看所有分支,可以使用checkout命令來把遠(yuǎn)程分支取到本地妆丘,并自動(dòng)建立tracking
$ git checkout -b localtest origin/remotetest
或者使用-t參數(shù)锄俄,它默認(rèn)會(huì)在本地建立一個(gè)和遠(yuǎn)程分支名字一樣的分支
$ git checkout -t origin/localtest