马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
转移项目 (BASIC ALL)
转移项目到另一个命名空间
当您将项目转移到另一个命名空间时,实际上是将项目转移到另一个组。 项目的所有组件(如问题、合并请求、管道和仪表板)会随着项目一起转移。 项目的路径也会发生变化,因此请确保在需要时更新指向项目组件的URL。
如果目标命名空间中没有匹配的组标签,极狐GitLab会为项目创建新的项目级别标签,用于问题和合并请求。
WARNING: 在转移过程中出现错误可能导致项目组件或依赖项丢失。
先决条件:
- 您必须在要转移到的组 中至少拥有维护者角色。
- 您必须是要转移的项目的所有者。
- 该组必须允许创建新项目。
- 对于启用了容器注册表的项目:
- 在极狐saas上:只能在同一顶级命名空间内转移项目。
- 在极狐GitLab自管理上:项目不能包含容器镜像。
- 项目不能有安全策略。
如果项目已分配安全策略,转移时将自动取消该策略。
- 如果根命名空间发生变化,您必须删除项目中符合命名约定的npm包。
转移项目后,您可以选择:
- 使用新的根命名空间路径更新包作用域,并再次将其发布到项目。
- 将包不更新根命名空间路径直接重新发布到项目,这将导致该包不再符合命名约定。
如果您不更新根命名空间路径重新发布包,它将无法通过实例端点进行访问。
要转移项目:
- 在左侧边栏中选择 搜索或转到,找到您的项目。
- 选择 设置 > 常规。
- 展开 高级 设置。
- 在 转移项目 下,选择要将项目转移到的命名空间。
- 选择 转移项目。
- 输入项目名称并选择 确认。
系统会将您重定向到项目的新页面,并且极狐GitLab会应用重定向。有关仓库路径更改的更多信息,请参阅路径更改时会发生什么。
NOTE: 如果您是管理员,还可以通过 管理界面 将任何项目转移到任何命名空间。
转移一个 Jihulab.com 项目到一个不同的订阅级别
当你从 Jihulab.com 专业或旗舰版许可的命名空间转移一个项目到 极狐GitLab免费版:
故障排查
在处理项目设置时,您可能会遇到以下问题,或者需要使用其他方法来完成特定任务。
通过控制台转移项目
如果通过 UI 或者 API 转移项目不生效,你可以尝试在 Rails控制台会话里转移:
p = Project.find_by_full_path('<project_path>')
# To set the owner of the project
current_user = p.creator
# Namespace where you want this to be moved
namespace = Namespace.find_by_full_path("<new_namespace>")
Projects::TransferService.new(p, current_user).execute(namespace)
相关话题
|