Google CloudのCloud Source Repositories(またはCSR)が非推奨(外部サイト)となることで、ソフトウェア開発者は自社のソースコードリポジトリ向けにフル機能を備えた代替製品を探す必要がでてきました。Google Cloudテクノロジーパートナー(外部サイト)であり、包括的なDevSecOps機能を提供しているGitLabは、有力な選択肢の一つになるでしょう。
このガイドでは、GitLab.comを使用している方、またGoogle Cloud上のSelf-Managedインスタンスを使用している方を対象に、CSRからGitLabにスムーズに移行するための手順をご紹介します。
GitLabがオススメの理由
Google Cloud Source RepositoriesからGitLabへの移行がオススメな理由はお勧めの方法です。GitLabはGoogle Cloudの戦略的パートナーであり、既存のインフラストラクチャと簡単かつシームレスに統合でき、次のような方法でお客様に価値をもたらします。
-
DevSecOpsプラットフォームの統合
- 計画からモニタリングまで、開発ライフサイクル全体を単一アプリケーションに統合します。これにより、個別ツールの乱立が解消され、劇的に生産性を向上できます。
-
Google Cloudとのシームレスな統合
- Google Kubernetes Engine(GKE)やCloud Build、Cloud Storageと簡単に接続できるため、Google Cloudエコシステム内でのスムーズな移行および効率的な運用が期待できます。
-
高度なCI/CD機能
- Auto DevOpsを活用して、セキュリティスキャンからデプロイまであらゆるプロセスを自動化し、開発サイクルを加速します。
-
業界屈指のAIによるコーディング支援
- GitLab Duoに組み込まれたAIアシスト開発を活用することで、安全かつ効率的なコーディング環境を促進できます。
前提要件
移行を開始する前に、以下の2点を必ず用意してください。
- GitLabアカウント:GitLab.comまたはセルフホスト型インスタンス上でアカウントを設定します。
- GitLabプロジェクト:CSRリポジトリの移行先として、GitLabで空のプロジェクトを作成します。
移行手順
- 空のGitLabプロジェクトを作成する:このプロジェクトをCSRリポジトリの移行先として使用します。作成したプロジェクトは今のところ、空のままにしておきます。
- パーソナルアクセストークン(PAT)を生成する:GitLabの設定に移動し、
read_repository
とwrite_repository
スコープを有効にしてPATを生成します。移行プロセス中にGitの操作を認証する際に、このトークンを使用します。 - Cloud Shellエディタでコードを編集する:CSRリポジトリで「コードを編集」ボタンをクリックして、Cloud Shellエディタを開きます。続行するには、Cloud Shellを認証して「リポジトリを信頼する」を選択する必要があります。
- Gitのステータスを調べる:Cloud Shellで
git status
を実行して、現在のブランチを確認し、GitLabにプッシュする前にすべてが正常であることを確かめます。
- リモートリポジトリを設定する:次のコマンドを実行して、GitLabプロジェクトをリモートリポジトリとして追加します。
git remote add origin [GITLAB_PROJECT_URL]
[GITLAB_PROJECT_URL]
の部分をGitLabプロジェクトの実際のURLに置き換えます。 GitLabにプッシュする:最後に次のコマンドを実行して、ローカルリポジトリをGitLabにプッシュします。
git push -u origin [BRANCH_NAME]
[BRANCH_NAME]
の部分を先程確認した現在のブランチ名に置き換えます。 プロンプトが表示されたら、GitLabのユーザー名に加え、パスワードとしてPATを使用して認証を行い、プッシュを完了します。
ベストプラクティス
- 開始前にバックアップする:移行プロセスをはじめる前に、必ずCSRリポジトリをバックアップしてください。
- 移行後にテストする:ブランチやCI/CDパイプラインなど、リポジトリのすべての要素が想定どおりに、GitLabで動作することを確認しましょう。
- GitLabの機能を活用する:AIやCI/CD、GitLab Enterprise Agile Planningなど、GitLabで提供される高度なDevSecOps機能を活用して、開発ワークフローを強化しましょう。
Google Cloud Source RepositoriesからGitLabへの移行は容易に実施でき、単なるソースコードの管理以上に多くのメリットがあります。移行後にワークフローを強化したいと考えているデベロッパーにとって、GitLabをGoogle Cloudと統合させることは非常に効果的な選択肢になると言えるでしょう。
GitLabのGoogle Cloudとの統合について詳しくは、こちらをお読みください。
監修:小松原 つかさ @tkomatsubara
(GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト)