6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

「GitLab」から「AWS CodeCommit」への移行方法

Last updated at Posted at 2023-07-11

この記事で実現できること

  • 「GitLab」のリポジトリを「AWS CodeCommit」へ移行すること。

前提

AWS CLI と Git は、最新バージョンのインストールを推奨。

手順開始前にやること

  • ローカルの編集内容は引き継がれないため、移行先に引き継ぎたい内容はプッシュしておく。
  • マージリクエストは引き継がれないため、移行前のリポジトリでマージリクエストを作成していた場合、移行後新たにプルリクエストを作成する。

手順

1. CodeCommitでリポジトリを作成する

  1. CodeCommitにアクセスし、ナビゲーションバーからリポジトリを作成するAWSリージョンを選択する。
    clipboard-202307041420-qaseu.png

  2. リポジトリの作成」をクリックする。

  3. リポジトリ名」と、必要に応じて「説明 - オプショナル」欄にリポジトリの説明を記入し、「作成」をクリックする。
    image.png

  4. 中身が空のリポジトリが作成された。
    image.png

  5. URLのクローン」から「HTTPSのクローン」を選択し、クローン用のURLをコピーする。
    後の手順で使うため、コピーしたURLはメモしておく。
    https接続.png

2. CodeCommitへのHTTPS接続用のGit認証情報を作成する

既に「Git認証情報」が作成されている場合は、2.の手順は飛ばしてください。

  1. IAMにアクセスし、「ユーザー」から「自分のIAMユーザー」を選択する。
    無題.png

  2. セキュリティ認証情報」タブを選択し、「AWS CodeCommit の HTTPS Git 認証情報」で「認証情報を生成」を選択する。
    無題2.png

  3. 新しい認証情報が作成される。
    ポップアップを閉じてしまったら今回作成されたパスワードは保存できなくなってしまうため、「認証情報をダウンロード」からダウンロードして、安全な場所に保存しておく。
    このユーザー名とパスワードは後の手順で使うため、保存した場所を覚えておく。
    無題3.png

3. GitLabリポジトリのクローンを作成して、CodeCommitリポジトリにプッシュする

  1. GitLabにアクセスし、CodeCommitに移行したいプロジェクトを開く。

  2. 画面右の「クローン」から「HTTPSでクローン」の「URL横のアイコン」を選択し、クローン用のURLをコピーする。
    次の手順で使うため、コピーしたURLはメモしておく。
    gitlabクローン.png

  3. コマンドプロンプトの任意のディレクトリで以下のコマンドを実行し、GitLabリポジトリのクローンをローカルディレクトリに作成する。
    クローンを作成するディレクトリには任意の名前を付ける。

    git clone --mirror ${ 3.2でコピーしたGitLabリポジトリのクローン用URL } ${ GitLabリポジトリのクローンを作成するディレクトリ名 }
    
  4. 以下のコマンドを実行し、クローンを作成したディレクトリに移動する。

    cd ${ クローンを作成したディレクトリ名 }
    
  5. 以下のコマンドを実行し、ローカルにクローンしたGitLabリポジトリを1.3で作成したCodeCommitリポジトリにプッシュする。
    認証を求められた場合は、2.3で作成されたユーザー名とパスワードを入力する。
    --allオプションでは、タグがプッシュされないので注意。

    git push ${ 1-5.でコピーしたCodeCommitリポジトリのクローン用URL } --all
    

    image.png

  6. GitLabリポジトリのタグもプッシュしたい場合は、3.5が完了するのを待ってから以下のコマンドを実行する。

    git push ${ 1-5.でコピーしたCodeCommitリポジトリのクローン用URL } --tags
    
  7. プッシュ完了後にCodeCommitリポジトリを見ると、コード・ブランチ・Git タグを移行できていることが確認できる。
    image.png
    ブランチの移行.png
    gittag.png

参考サイト

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?