Phanix

Just writing

Gitlab project migration

如果不是要把整個 gitlab server 做搬遷,而是搬遷部分 project,或者是要把 Server B 的 projects 搬入 Server A,可以考慮這樣做。

mirror 參數

這個參數是將整個 project repository 做 mirror,等於把 server 上整個 project 全部打包(所有 branch & tag)拿下來。

$ git clone --mirror [email protected]_SERVER_B:NAMESPACE/PROJECT.git
$ cd PROJECT.git
$ git remote add newremote [email protected]_SERVER_A:NAMESPACE/PROJECT.git
$ git push -f --tags newremote refs/heads/*:refs/heads/*
$ cd ..

而有些 project 可能會有編輯 wiki page,而在 gitlab 中則是把 wiki page 當成也是一個 repository,所以可以用類似的方式來把 wiki page 做搬移。

$ git clone --mirror [email protected]_SERVER_B:NAMESPACE/PROJECT.wiki.git
$ cd PROJECT.wiki.git
$ git remote add newremote [email protected]_SERVER_A:NAMESPACE/PROJECT.wiki.git
$ git push -f --tags newremote refs/heads/*:refs/heads/*
$ cd ..

Original link: Phanix's Blog

喜歡我的文章嗎?
別忘了給點支持與讚賞,讓我知道創作的路上有你陪伴。

CC BY-NC-ND 2.0 版權聲明

看不過癮?

一鍵登入,即可加入全球最優質中文創作社區