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