由于项目需要,有时可能需要将代码工程从一个gitlab服务器迁移至另一个gitlab服务器。下面介绍三种迁移的方式。
方案一:直接在gitlab界面上import
该方法是在gitlab网页上一个一个代码工程import, 针对代码工程比较少的情况下适用。该方法是通过http的方式对旧服务器进行访问的。
需要创建工程的组或子组(需先创建子组)下面,点击“New project”,
image.png
择“Import project”,看到如下界面,选择“git Repo by URL”,
image.png
下面的界面填写需要import的工程的url,http用户名与密码,和新的工程的名字,就可以开始”Create project”,
project_url.png
方案二:在服务器后台拷贝代码仓库,执行gitlab的import命令
该方法是直接在服务器后台对代码仓库进行操作,适合有权限访问新老服务器后台,并且代码工程比较多的情况下进行整体或批量迁移。
1. 在目的地服务器上创建一个临时仓库文件夹
eg: /var/opt/gitlab/git-data/repositories-import
2. 将旧服务器上仓库内的所有内容拷贝到目的地服务器上的临时仓库文件夹
旧服务器仓库默认路径是 /var/opt/gitlab/git-data/repositories
3. 设置目录权限
chown -R git.git /var/opt/gitlab/git-data/ repositories-import
4. 开始迁移
gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repository-import/']
注意事项:
如需整体迁移,则将旧仓库整体内