Bitbucket Server から GitLab にプロジェクトをインポートします。
GitLab 11.2で導入されました。
Bitbucket ServerからGitLabへ、最小限の労力でプロジェクトをインポートできます。
概要
- 現在の状態では、Bitbucketインポーターはインポートできます:
- リポジトリの説明 (GitLab 11.2+)
- Git リポジトリデータ (GitLab 11.2+)
- プルリクエスト (GitLab 11.2+)
- プルリクエストのコメント (GitLab 11.2+)
- リポジトリの公開は維持されます。 Bitbucketでリポジトリが非公開の場合、GitLabでも非公開として作成されます。
制限事項
- 現在のところ GitLab ではコードの任意の行にコメントをつけることはできません。そのため、Bitbucket のコメントの範囲外はマージリクエストのコメントとして挿入されます。
- Bitbucket Serverでは複数のスレッドレベルを設定することができます。 GitLabインポートはこれを1つのスレッドにまとめ、元のコメントの一部を引用します。
- 辞退されたプルリクエストには到達できないコミットがあり、GitLabインポーターが適切な差分を生成できません。 これらのプルリクエストは空の変更として表示されます。
- Markdownの添付ファイルは現在インポートされません。
- タスクリストはインポートされません。
- 絵文字リアクションはインポートされません。
- プロジェクトのフィルタリングは、あいまい検索をサポートしていません(現在サポートされているのは、
starts with
またはfull match strings
のみです)。
どのように動作するか
Bitbucket Serverインポートの動作は以下の通りです:
- ユーザーは、BitbucketにログインするためのURL、ユーザー名、パスワード(または個人アクセストークン)の入力を求められます。 これらの認証情報は、インポーターが実行されている間だけ保持されます。
- インポーターは、Bitbucket サーバー上の現在のすべてのリポジトリの一覧を表示しようとします。
- 選択すると、インポーターはリポジトリをクローンし、プルリクエストとコメントをインポートします。
ユーザー割り当て
イシュー/プルリクエストがインポートされるとき、BitbucketインポーターはGitLabユーザーデータベースで確認された作成者のメールアドレスを見つけようとします。 そのようなユーザーがいない場合、プロジェクト作成者が作成者として設定されます。 インポーターはコメントで元の作成者を示すメモを追加します。
インポーターは新しい名前空間(グループ)が存在しない場合は作成し、名前空間が取られている場合は、インポート処理を開始したユーザーの名前空間でリポジトリがインポートされます。
Bitbucketリポジトリのインポート
- GitLabにサインインし、ダッシュボードに移動します。
- 新規プロジェクトをクリックします。
-
Bitbucket Server “ボタンをクリックしてください。 ボタンがない場合は、Admin > Application Settings > Visibility and access controls > Import sourcesでインポーターを有効にしてください。
-
Bitbucket Serverの認証情報を入力します。
-
インポートしたいプロジェクトをクリックするか、すべてのプロジェクトをインポートします。 プロジェクト名でプロジェクトをフィルタリングし、各プロジェクトをインポートするネームスペースを選択することもできます。
トラブルシューティング
Bitbucketのトラブルシューティングをご覧ください。