如何将现有GitLab项目迁移至群组/子组并保留完整数据
GitLab 原生支持项目跨命名空间转移,转移过程会完整保留所有提交历史、分支标签、Issue、成员权限、CI/CD 记录等全量数据,完全符合你的需求,具体操作流程如下:
前置要求
- 你对当前待迁移的独立项目持有 所有者(Owner) 权限
- 你对目标迁入子组持有 维护者(Maintainer) 及以上权限
- 目标子组内不存在与待迁移项目重名的项目,如有冲突需提前修改任意一方的项目名称/路径
UI 操作步骤
- 进入待迁移的独立项目主页,点击左侧边栏的「设置」→「通用」
- 下滑页面找到「高级」配置区块,点击「展开」
- 找到「转移项目」功能模块,点击「转移项目」按钮
- 在弹出的确认弹窗中,从「选择新的命名空间」下拉菜单里选中目标子组
- 按照页面提示输入当前项目的完整名称做二次校验,点击「确认」即可完成转移
后续注意事项
- 转移完成后原项目的访问地址会自动重定向到新的子组路径,原有外部链接不会立即失效,建议同步通知项目成员更新本地仓库的远程地址,更新命令为:
git remote set-url origin <新的项目SSH/HTTPS地址> - 项目附属的容器镜像库、通用包仓库、Wiki 等内容也会同步转移,无需额外手动迁移
- 项目原有成员的权限设置会完整保留,若需要适配子组的继承权限规则,可在转移完成后到项目成员设置页调整
- 如果你使用的是 14.0 以下版本的私有部署 GitLab,转移项目的入口位置可能存在小幅差异,同样可以在项目设置的通用高级配置板块找到对应功能
内容的提问来源于stack exchange,提问作者Victor Valtchev
相关产品推荐
相关产品推荐

