若有需要將整個 repository 從 A 搬到 B ,單純的 git clone 跟 git push 是不夠的,因為還有 branches, tags 等等的。
所以得這樣作。
首先在目的端,例如 github/gitlab ,建立一個空的 repository。
接著要處理來源端的 repository,在 clone 時加上 --mirror
git clone --mirror git@example.com:repo1.git
git clone
完成會有一個 repo1 的資料夾,進入 repo1 的資料夾,執行以下指令把所有 branches, tags 資訊都拉取回來,然後加入新的遠端,並進行推送
git fetch --all
git remote add target git@<新的repository>
git push target --mirror
這樣就大功告成了。
沒有留言:
張貼留言