Giteaから移行する
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
GiteaからGitLabにプロジェクトをインポートします。
Giteaインポーターは、Giteaのアイテムの一部をインポートします。
| Giteaのアイテム | インポート済み |
|---|---|
| リポジトリの説明 | |
| Gitリポジトリデータ | |
| イシュー | |
| プルリクエスト | |
| マイルストーン | |
| ラベル | |
| プルリクエストの差分ノート |
インポーターのワークフロー
Giteaインポーターは、GitLab.comとGitLab Self-Managedのユーザーコントリビュートの移行後マッピングをサポートしています。このインポーターは、マッピングの代替の方法もサポートしています。
インポート時:
- リポジトリの公開アクセスは保持されます。リポジトリがGiteaで非公開の場合、GitLabでも非公開として作成されます。
- インポートされたイシュー、マージリクエスト、コメントには、GitLabでインポート済みバッジが付いています。
- GiteaはOAuthプロバイダーではないため、作成者または担当者をGitLabインスタンス上のユーザーにマッピングできません。プロジェクト作成者(通常はインポートプロセスを開始したユーザー)が作成者として設定されます。イシューについては、元のGiteaの作成者を引き続き確認できます。
前提条件
- Giteaバージョン1.0.0以降。
- Giteaのインポート元を有効にする必要があります。無効な場合は、GitLab管理者に有効にするように依頼してください。GitLab.comではデフォルトで有効になっています。
- メンテナーまたはオーナーロールをインポート先グループに設定する必要があります。
Giteaリポジトリをインポートする
インポート中、パーソナルアクセストークンを作成し、Giteaに対する1回限りの認可を行い、GitLabがリポジトリにアクセスできるようにします。
Giteaリポジトリをインポートするには:
右上隅で、新規作成( )と新規プロジェクト/リポジトリを選択します。
インポートの認可プロセスを開始するため、Giteaを選択します。
https://your-gitea-instance/user/settings/applicationsに移動します。your-gitea-instanceをGiteaインスタンスのホストに置き換えてください。Generate New Tokenを選択します。
トークンの説明を入力します。
Generate Tokenを選択します。
トークンハッシュをコピーします。
GitLabに戻り、そのトークンをGiteaインポーターに入力します。
Giteaリポジトリの一覧を選択し、GitLabがリポジトリ情報を読み取るまで待ちます。完了すると、GitLabにインポーターページが表示され、インポートするリポジトリを選択できます。ここで、Giteaリポジトリのインポートステータスを確認できます:
- インポート中のものは開始ステータスになります。
- すでに正常にインポート済みのものは緑色で完了ステータスになります。
- まだインポートしていないものは、テーブルの右側にインポートが表示されます。
- すでにインポート済みのものは、テーブルの右側に再インポートが表示されます。
Giteaリポジトリのインポートを完了するには:
- すべてのGiteaプロジェクトを一度にインポートします。左上隅で、すべてのプロジェクトをインポートを選択します。
- 名前でプロジェクトをフィルタリングして、選択したプロジェクトのみをインポートします。フィルターを適用している場合、すべてのプロジェクトをインポートは、選択したプロジェクトのみをインポートします。
- 権限がある場合は、プロジェクトの別名や別のネームスペースを選択できます。
代替のマッピング方法
GitLab 18.5以前では、gitea_user_mapping機能フラグを無効にして、インポートにおける代替のユーザーコントリビュートマッピング方法を使用できます。
この機能フラグによって、この機能の可用性が制御されます。この機能は推奨されておらず、次の場合は使用できません:
- GitLab.comへの移行。
- GitLab Self-ManagedおよびGitLab Dedicated 18.6以降への移行。
このマッピング方法で見つかった問題が修正される可能性は低いです。代わりに、これらの制限がない移行後マッピング方法を使用してください。
詳細については、イシュー512211を参照してください。
この方法を使用すると、ユーザーコントリビュートは、デフォルトでプロジェクト作成者(通常はインポートプロセスを開始したユーザー)に割り当てられます。