git lab 学习笔记7

本文介绍了GitLab的项目导入导出功能,包括重要注意事项、版本历史、导出内容和导入项目的过程。导出内容包括项目和维基存储库、配置、评论等,但不包括构建痕迹和工件等。导入时,需注意导入和导出GitLab版本的兼容性,并且大型项目的导入可能需要使用Rake任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目导入/导出 (免费)

  • 引入 在 GitLab 8.9 中 。
  • 从 GitLab 10.0 开始,管理员可以禁用 GitLab 实例上的项目导出选项。

在任何 GitLab 实例或 GitLab.com 上运行的现有项目都可以与其所有相关的项目一起导出 数据并移动到新的 GitLab 实例中。

GitLab导入/导出 ,如果该项目导入选项启用显示按钮。

也可以看看:

要设置项目导入/导出:

  1. 在顶部栏上,转到“ 菜单”>“管理”>“设置”>“常规”>“可见性和访问控制”
  2. 滚动到 导入源
  3. 启用所需的 导入源

重要笔记

请注意以下事项:

  • 在导入项目之前,您需要先导出数据。 请参见 导出项目及其数据 了解如何通过 UI 导出项目。
  • 不支持从较新版本的 GitLab 导入。 导入 GitLab 版本必须大于或等于导出 GitLab 版本。
  • 导入失败,除非导入和导出 GitLab 实例 如 中所述兼容 版本历史记录
  • 导出是在您配置的 shared_path,一个临时共享目录, 并移动到您配置的 uploads_directory. 每 24 小时,特定工作人员会删除这些导出文件。
  • 组成员导出为项目成员,只要用户有 维护者或管理员访问导出项目所在的组。
  • 具有 项目成员 所有者角色的 被导入为维护者。
  • 如果管理用户(不是所有者)执行导入,导入的用户可以通过他们的主要电子邮件映射到自我管理的实例上。 否则,留下补充评论以提及原作者和 MR、票据或问题归进口商所有。
    • 对于通过 GitLab.com Groups 执行的项目迁移导入,保留作者信息是 可以通过 专业服务参与
  • 如果导入的项目包含源自 fork 的合并请求, 然后创建与此类合并请求关联的新分支 在导入/导出期间的项目中。 因此,分支数 在导出的项目中可能比在原始项目中更大。
  • 不会导出允许推送到受保护分支的部署密钥。 所以, 您需要通过首先在您的 导入项目,然后相应地更新受保护的分支。

版本历史

14.0+

在 GitLab 14.0 中,项目和组导出不再支持 JSON 格式。 为了允许一个 过渡期间,您仍然可以导入任何 JSON 导出。 导入和导出的新格式 是 NDJSON。

13.0+

从 GitLab 13.0 开始,GitLab 可以导入从不同 GitLab 部署导出的包。 此能力仅限于两个以前的 GitLab 未成年人 发布,这类似于我们的 流程 安全发布

例如:

当前版本可以导入导出的包
13.013.0、12.10、12.9
13.113.1、13.0、12.10

12.x

在 13.0 之前,这是一个定义的兼容性表:

导出 GitLab 版本导入 GitLab 版本
11.7 至 12.1011.7 至 12.10
11.1 至 11.611.1 至 11.6
10.8 到 11.010.8 到 11.0
10.4 到 10.710.4 到 10.7
10.310.3
10.0 到 10.210.0 到 10.2
9.4 至 9.69.4 至 9.6
9.2 至 9.39.2 至 9.3
8.17 至 9.18.17 至 9.1
8.13 至 8.168.13 至 8.16
8.128.12
8.10.3 至 8.118.10.3 至 8.11
8.10.0 至 8.10.28.10.0 至 8.10.2
8.9.5 至 8.9.118.9.5 至 8.9.11
8.9.0 到 8.9.48.9.0 到 8.9.4

项目只能在具有匹配导入/导出版本的 GitLab 版本之间导出和导入。

例如,8.10.3 和 8.11 具有相同的导入/导出版本 (0.1.3) 并且它们之间的导出是兼容的。

CE和EE之间

您可以将项目从 导出 社区版 到企业版 ,反之亦然。 这假设 版本历史 满足 要求。

如果您将项目从企业版导出到社区版,您可能会丢失仅保留在企业版中的数据。 有关更多信息,请参阅 从 EE 降级到 CE

导出的内容

导出以下项目:

  • 项目和维基存储库
  • 项目上传
  • 项目配置,不包括集成
  • 评论问题、合并请求与差异和评论、标签、里程碑、片段、时间跟踪、 和其他项目实体
  • 设计管理文件和数据
  • LFS 对象
  • 发行版
  • 管道历史
  • 推送规则
  • 奖项

以下项目 导出 :

  • 构建痕迹和工件
  • 容器注册表镜像
  • 变量 CI/CD
  • 网络钩子
  • 任何加密令牌
  • 合并请求批准人

笔记: 有关保存在项目导出中的特定数据的更多详细信息,请参阅 import_export.yml文件。

导出项目及其数据

完整的项目导出功能仅限于项目维护者和所有者。 您可以通过 配置此类功能 项目设置

要导出项目及其数据,请执行以下步骤:

  1. 转到您的项目主页。

     

  2. 单击 设置 边栏中的 。

  3. 向下滚动以找到“ 导出项目” 按钮:

  4. 生成导出后,您应该会收到一封电子邮件,其中包含指向 下载文件:

  5. 或者,您可以返回项目设置并下载 文件,或生成新的导出。 一旦文件可用,页面 应该显示 下载导出 按钮:http://192.168.2.105:54100/help/user/project/settings/img/import_export_download_export.png

导入项目

  1. GitLab 项目导入功能是创建项目时的第一个导入选项 新项目。 点击 GitLab 导出

     

  2. 输入您的项目名称和 URL。 然后选择您之前导出的文件:

     

  3. 单击 导入项目 开始导入。 您新导入的项目 页面很快出现。

笔记: 如果使用 Internal可见度 受到限制 , 所有导入的项目都被赋予了可见性 Private.

笔记: 管理员可以设置最大导入文件大小,默认为 0(无限)。 作为管理员,您可以修改最大导入文件大小。 为此,请使用 max_import_size选项,在 应用程序设置API 管理区UI 。 默认值 修改 GitLab 13.8 中的 从 50MB 为 0。

项目导入状态

您可以通过 查询导入 项目导入/导出 API 。 如 API 文档中所述,查询可能会返回导入错误或异常。

导入大型项目 (免费)

如果您有一个更大的项目,请考虑使用 Rake 任务,如我们的 开发人员文档 中所述

速率限制

为了帮助避免滥用,默认情况下,用户被限制为:

请求类型限制
出口每分钟 6 个项目
下载导出每组每分钟 1 次下载
进口每分钟 6 个项目

请注意 GitLab.com 的 可能 设置 设置不同 与默认 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值