Help us learn about your current experience with the documentation. Take the survey.
将你的项目从 Gitea 导入到 GitLab
- Tier: Free, Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
将你的项目从 Gitea 导入到 GitLab。
Gitea 导入器可以导入:
- 仓库描述
- Git 仓库数据
- 问题(Issues)
- 拉取请求(Pull requests)
- 里程碑(Milestones)
- 标签(Labels)
导入时:
- 仓库的公开访问权限会被保留。如果 Gitea 中的仓库是私有的,在 GitLab 中也会创建为私有仓库。
- 导入的问题、合并请求和评论在 GitLab 中会有 已导入 标识。
已知问题
- 由于 Gitea 不是 OAuth 提供商,作者或指派人无法映射到你的 GitLab 实例上的用户。项目创建者(通常是启动导入过程的用户)会被设置为作者。对于问题,你仍然可以看到原始的 Gitea 作者。
- Gitea 导入器不导入拉取请求的差异注释。更多信息请参见 此问题。
先决条件
- Gitea 版本 1.0.0 或更高版本。
- 必须启用 Gitea 导入源。 如果未启用,请让你的 GitLab 管理员启用它。Gitea 导入源在 GitLab.com 上默认启用。
- 在要导入的目标群组上至少拥有 Maintainer 角色。
导入你的 Gitea 仓库
创建新项目时会显示 Gitea 导入器页面。开始 Gitea 导入:
- 在左侧边栏顶部,选择 新建( )和 新项目/仓库。
- 选择 Gitea 开始导入授权流程。
使用个人访问令牌授权访问你的仓库
使用此方法,你只需一次性授权 Gitea,授予 GitLab 访问你仓库的权限:
- 前往
https://your-gitea-instance/user/settings/applications(将your-gitea-instance替换为你的 Gitea 实例的主机地址)。 - 选择 生成新令牌。
- 输入令牌描述。
- 选择 生成令牌。
- 复制令牌哈希值。
- 返回 GitLab 并将令牌提供给 Gitea 导入器。
- 选择 列出你的 Gitea 仓库,等待 GitLab 读取 你的仓库信息。完成后,GitLab 会显示导入器页面,供你选择要导入的仓库。
选择要导入的仓库
授权访问你的 Gitea 仓库后,你将被 重定向到 Gitea 导入器页面。
在那里,你可以查看你的 Gitea 仓库的导入状态:
- 正在导入的显示为已开始状态。
- 已成功导入的显示为绿色完成状态。
- 尚未导入的在表格右侧有 导入。
- 已导入的在表格右侧有 重新导入。
你还可以:
- 在左上角选择 导入所有项目 一次性导入所有 Gitea 项目。
- 按名称过滤项目。如果应用了过滤器,导入所有项目 只会导入选中的项目。
- 如果你有权限,可以为项目选择不同的名称和不同的命名空间。
用户贡献和成员映射
Gitea 导入器使用一种 改进的方法 来映射 GitLab.com 和 GitLab Self-Managed 的用户贡献。
旧的用户贡献映射方法
你可以使用旧的用户贡献映射方法导入到 GitLab Self-Managed 和 GitLab Dedicated 实例。
要使用此方法,必须禁用 gitea_user_mapping。
对于导入到 GitLab.com,你必须
使用 改进的方法。
使用旧方法时,用户贡献默认分配给项目创建者(通常是启动导入过程的用户)。