跳转到内容
Try Gitea Cloud ☁️ for 30 days → Accelerate your Development & Deploys!
这是 1.23.8 的文档,已不是最新发布版本。查看最新发布版本

迁移接口

当前中文文档翻译不是最新版,访问英文版本查看最新内容,或帮助我们翻译

完整迁移功能在 Gitea 1.9.0 版本中引入。它定义了两个接口,用于支持从其他 Git 托管平台迁移存储库数据到 Gitea,或者在将来将 Gitea 数据迁移到其他 Git 托管平台。

目前已实现了从 GitHub、GitLab 和其他 Gitea 实例的迁移。

首先,Gitea 在包modules/migration中定义了一些标准对象。它们是RepositoryMilestoneReleaseReleaseAssetLabelIssueCommentPullRequestReactionReviewReviewComment

要从新的 Git 托管平台迁移,需要进行两个步骤的更新。

  • 您应该实现一个Downloader,用于获取存储库信息。
  • 您应该实现一个DownloaderFactory,用于检测 URL 是否匹配,并创建上述的Downloader
    • 您需要在init()中通过RegisterDownloaderFactory注册DownloaderFactory

您可以在downloader.go中找到这些接口。

目前,只实现了GiteaLocalUploader,因此我们只能通过此 Uploader 将下载的数据保存到本地的 Gitea 实例。目前不支持其他上传器。

您可以在uploader.go中找到这些接口。