公司最近準備接手另一家公司的APP,人家的代碼都部署在人公司自己的服務器上,我們需要把代碼整個遷移到我們自己的服務器上,搜了一下說直接打包然后上傳的,還有服務器對服務器遷移的,我都試了一下,都不太行,沒辦法只能人肉遷移,一個一個來。只遷移代碼肯定是不太行的,最好就是保留別人代碼的提交記錄包括分支這些。直接上步驟
1、從原倉庫克隆一份裸版本庫
git clone --bare git://github.com/username/project.git (老倉庫地址)
2、然后到新的 Git 服務器(新gitlab服務)上創(chuàng)建一個新項目 名叫: newproject.git
我創(chuàng)建的項目名稱和原來項目名稱是一樣的,只建項目什么都不做。
然后以鏡像推送的方式上傳代碼到新的項目中
cd project.git (老項目本地地址)
git push --mirror git@example.com/username/newproject.git(新倉庫地址)
此步驟需要一個項目一個項目的遷移,所以叫人肉遷移。
根據(jù)這個步驟來,到最后一步有的人會遇到?jīng)]有權限,說明你的項目被保護了,把保護關掉,重新執(zhí)行最后一句即可。
項目遷移成功之后,可以不用Git clone,直接在舊的項目終端輸入一條命令,本地代碼的地址就會變成新代碼的地址
git remote set-url origin git@example.com/username/newproject.git