使用 Git Mirror 無痛轉移 Git Server
使用 Git Mirror 無痛轉移 Git Server
git clone mirror 選項,它可以把整個 repo 的資訊都 clone 下來,包括 branches, tags
再用 git push --mirror 把整包都丟到新的 git server 上面的 repo 裡。
Example
整包 clone 下來
1.
git clone --mirror gitolite@git.lab317.org:dinos80152/Authentication
2.
到 gitlab 建一個空的 repo
3.
進到專案資料夾,設定新的遠端 git repo 位置
cd Authentication.git/
git remote set-url --push origin git@gitlab.lab317.org:dinos80152/Authentication.git
4.
local 更新 remote branch,因為是新的 repo,就是將本地的 origin/xxx 都刪囉。-p == --prune
git fetch -p origin
5.
最後將整包 push 上去
git push --mirror
可以在 Gitlab 上看到 repo 裡有以前在 Gitolite 的所有紀錄與東西囉。
reference: https://dinos80152.wordpress.com/2015/09/21/%E4%BD%BF%E7%94%A8-git-mirror-%E7%84%A1%E7%97%9B%E8%BD%89%E7%A7%BB-git-server/
git clone mirror 選項,它可以把整個 repo 的資訊都 clone 下來,包括 branches, tags
再用 git push --mirror 把整包都丟到新的 git server 上面的 repo 裡。
Example
整包 clone 下來
1.
git clone --mirror gitolite@git.lab317.org:dinos80152/Authentication
2.
到 gitlab 建一個空的 repo
3.
進到專案資料夾,設定新的遠端 git repo 位置
cd Authentication.git/
git remote set-url --push origin git@gitlab.lab317.org:dinos80152/Authentication.git
4.
local 更新 remote branch,因為是新的 repo,就是將本地的 origin/xxx 都刪囉。-p == --prune
git fetch -p origin
5.
最後將整包 push 上去
git push --mirror
可以在 Gitlab 上看到 repo 裡有以前在 Gitolite 的所有紀錄與東西囉。
reference: https://dinos80152.wordpress.com/2015/09/21/%E4%BD%BF%E7%94%A8-git-mirror-%E7%84%A1%E7%97%9B%E8%BD%89%E7%A7%BB-git-server/
留言
張貼留言