跳至主要内容
版本:1.28-dev

遷移介面

完整遷移功能在 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中找到這些介面。