GiteaからGitLabにプロジェクトをインポートします。
最小限の労力でGiteaからGitLabにプロジェクトをインポート。
概要
注意:Gitea
v1.0.0
またはそれ以降が必要です。
- 現在の状態では、Giteaインポーターはインポートすることができます:
- リポジトリの説明 (GitLab 8.15+)
- Git リポジトリデータ (GitLab 8.15+)
- イシュー (GitLab 8.15+)
- プルリクエスト (GitLab 8.15+)
- マイルストーン (GitLab 8.15+)
- ラベル (GitLab 8.15+)
- リポジトリの公開は維持されます。 Giteaでリポジトリが非公開の場合、GitLabでも非公開として作成されます。
どのように動作するか
Giteaは現在OAuthプロバイダーではないため、GitLabのインスタンスでauthor/assigneeをユーザーにマッピングすることはできません。 つまり、プロジェクトの作成者(ほとんどの場合、インポートを開始した現在のユーザー)がauthorとして設定されますが、Giteaのオリジナルのauthorに関するissueの参照は保持されます。
インポーターは新しい名前空間(グループ)が存在しない場合は作成し、名前空間が取られている場合は、インポート処理を開始したユーザーの名前空間でリポジトリがインポートされます。
Giteaリポジトリのインポート
インポートページは、新しいプロジェクトを作成するときに表示されます。
Giteaのリンクをクリックすると、インポートの作成が開始されます。
個人アクセストークンを使用して、リポジトリへのアクセスを作成者に許可します。
この方法では、Giteaで1回限りの認証を行い、GitLabにリポジトリへのアクセスを許可します:
-
https://your-gitea-instance/user/settings/applications
にアクセスしてください(your-gitea-instance
は Gitea インスタンスのホストに置き換えてください)。 - 新しいトークンの生成]をクリックします。
- トークンの説明を入力します。
- トークンの生成]をクリックします。
- トークンのハッシュをコピーします。
- GitLabに戻り、トークンをGiteaインポーターに渡します。
- List Your Gitea Repositoriesボタンをクリックし、GitLab がリポジトリの情報を読み込むまで待ちます。 完了すると、インポーターのページに移動してインポートするリポジトリを選択します。
インポートするリポジトリの選択
Giteaリポジトリへのアクセスを作成者に許可すると、Giteaインポーターページにリダイレクトされます。
そこからGiteaリポジトリのインポートステータスを見ることができます。
- インポート中のものは、_開始済み_ステータスが表示されます、
- すでにインポートに成功_した_ものは、ステータスが緑色になります、
- 一方、まだインポートされていないものには、表の右側にインポートボタンが表示されます。
あなたもできます:
- 左上にあるImport all projectsをクリックし、Giteaプロジェクトを一括インポートしてください。
- プロジェクトを名前でフィルタリングします。 フィルタが適用されている場合、[すべてのプロジェクトをインポート] をクリックすると、マッチしたプロジェクトだけがインポートされます。
また、権限があれば、プロジェクト名やネームスペースを変更することもできます。