目錄
- 簡(jiǎn)介
- 流程
- 總結(jié)
簡(jiǎn)介
因需遷移單一代碼倉(cāng)庫(kù)至其他代碼托管平臺(tái),要遷移的包括倉(cāng)庫(kù)內(nèi)容以及所有歷史記錄和推送日志。
本文中的方法同樣適用于在同一代碼托管平臺(tái)中克隆倉(cāng)庫(kù)。
流程
1. 創(chuàng)建新倉(cāng)庫(kù):
在目的平臺(tái)的指定位置創(chuàng)建一個(gè)新的倉(cāng)庫(kù)(目的倉(cāng)庫(kù)),用于接收克隆的數(shù)據(jù)。
2. 克隆舊倉(cāng)庫(kù)到本地:
將待遷移倉(cāng)庫(kù)(舊倉(cāng)庫(kù))克隆到本地。要確保使用帶有--mirror的克隆命令,因?yàn)檫@樣可以克隆倉(cāng)庫(kù)的所有數(shù)據(jù),包括所有分支、標(biāo)簽、提交歷史等
git clone --mirror 舊倉(cāng)庫(kù)的克隆URL
3. 將本地克隆推送至新倉(cāng)庫(kù):
進(jìn)入本地克隆的倉(cāng)庫(kù)的目錄,然后更改遠(yuǎn)程推送地址至目的倉(cāng)庫(kù)
git remote set-url origin 新倉(cāng)庫(kù)的克隆URL
然后使用push命令將所有數(shù)據(jù)推送至目的倉(cāng)庫(kù)
git push --mirror
4. 驗(yàn)證新倉(cāng)庫(kù)
在目標(biāo)平臺(tái)中查看新倉(cāng)庫(kù),確認(rèn)所有的分支、標(biāo)簽和提交歷史都已正確推送。
總結(jié)
通過(guò)以上步驟,可以將一個(gè)完整的倉(cāng)庫(kù)遷移到其他平臺(tái)或相同平臺(tái)的不同路徑。這樣做不僅復(fù)制了代碼,還包括了完整的推送日志和版本歷史,使得新倉(cāng)庫(kù)成為舊倉(cāng)庫(kù)的完整鏡像。