You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

migrations.zh-tw.md 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. ---
  2. date: "2019-04-15T17:29:00+08:00"
  3. title: "遷移介面"
  4. slug: "migrations-interfaces"
  5. sidebar_position: 55
  6. toc: false
  7. draft: false
  8. aliases:
  9. - /zh-tw/migrations-interfaces
  10. menu:
  11. sidebar:
  12. parent: "development"
  13. name: "遷移介面"
  14. sidebar_position: 55
  15. identifier: "migrations-interfaces"
  16. ---
  17. # 遷移功能
  18. 完整的遷移從 Gitea 1.9.0 開始提供。它定義了兩個介面用來從其它 Git 託管平臺遷移儲存庫資料到 Gitea,未來或許會提供遷移到其它 git 託管平臺。
  19. 目前已實作了從 Github, Gitlab 和其它 Gitea 遷移資料。
  20. Gitea 定義了一些基本物件於套件 [modules/migration](https://github.com/go-gitea/gitea/tree/master/modules/migration)。
  21. 分別是 `Repository`, `Milestone`, `Release`, `ReleaseAsset`, `Label`, `Issue`, `Comment`, `PullRequest`, `Reaction`, `Review`, `ReviewComment`。
  22. ## Downloader 介面
  23. 從新的 Git 託管平臺遷移,有兩個新的步驟。
  24. - 您必須實作一個 `Downloader`,它用來取得儲存庫資訊。
  25. - 您必須實作一個 `DownloaderFactory`,它用來偵測 URL 是否符合並建立上述的 `Downloader`。
  26. - 您需要在 `init()` 透過 `RegisterDownloaderFactory` 來註冊 `DownloaderFactory`。
  27. 您可以在 [downloader.go](https://github.com/go-gitea/gitea/blob/main/modules/migration/downloader.go) 中找到這些介面。
  28. ## Uploader 介面
  29. 目前只有 `GiteaLocalUploader` 被實作出來,所以我們只能通過 `Uploader` 儲存已下載的資料到本地的 Gitea 實例。
  30. 目前尚未支援其它 Uploader。
  31. 您可以在 [uploader.go](https://github.com/go-gitea/gitea/blob/main/modules/migration/uploader.go) 中找到這些介面。