Cloud Source Repositoriesを使ってみる

クラウドでのソースコードの管理といえばGitHubが定番ですが、GoogleCloudにもソースコードの管理ができるサービスがありましたので、使ってみました。

個人で開発していますので、最低限のコードの履歴管理のみ試しています。

Cloud Source Repositories

クライアントアプリは、Flutterで開発し、Firebaseと連携することが多いので、コード管理もGoogleのサービスを使うと色々と都合が良いかと思い、調べてみたところ「Google Source Repositories」というサービスがありました。

GitHubは、Freeプランでは500MBまでしか使えませんが、Google Source Repositories は50GBまで無料で使えます。Publicにしたくない場合には、こちらを使った方がお得そうです。

Always Free の使用上限

Google Cloud の無料枠の一部として、Cloud Source Repositories では、特定の上限まで無料でリソースを使用できます。この無料枠の使用量上限は、無料トライアル期間中だけでなく、期間終了後も適用されます。使用量上限を超えた場合や無料トライアル期間を過ぎた場合は、このページで説明する料金体系に沿って課金されます。

リソース1 か月あたりの無料使用量上限詳細
請求先アカウントあたりのプロジェクト ユーザーCloud Source Repositories は、1 請求先アカウントあたり最大 5 名のプロジェクト ユーザーが無料で使用できます。プロジェクト ユーザーは、1 つのプロジェクト内のリポジトリを読み取る、またはリポジトリを変更できるユニーク ユーザーです。複数のプロジェクトから読み取りまたは変更を行うユニーク ユーザーは、複数のプロジェクト ユーザーとしてカウントされます。プロジェクトへのユーザー アクセスを許可しても、ユーザーがプロジェクト内のリポジトリにアクセスしなければ、料金は発生しません。たとえば、同じ請求先アカウントにリンクされている 2 つのプロジェクトがあり、あるユーザーが両方のプロジェクトのリポジトリにアクセスした場合、請求先アカウントでは 2 名のプロジェクト ユーザーとしてカウントされます。3 つのリポジトリを含む 1 つのプロジェクトがあり、そのプロジェクト内の各リポジトリにアクセスした場合、1 人のプロジェクト ユーザーとしてカウントされます。プロジェクト ユーザーは、ユーザーが Cloud Source Repositories に直接アクセスした場合にのみカウントされます。たとえば、Mirroring Repositories では、Cloud Source Repositories プロジェクトに直接アクセスしたユーザーのみがプロジェクト ユーザーとしてカウントされます。GitHub または Bitbucket サーバー上のミラーリングされたリポジトリから読み取りまたは書き込みを行うと、プロジェクトへのアクセスとしてカウントされず、料金は発生しません。
StorageCloud Source Repositories では、月間 50 GB まで、ストレージを無料で利用できます。ストレージは、すべての Cloud Source Repositories プロジェクト全体で計算されます。
下りネットワークCloud Source Repositories では、月間 50 GB まで、下りネットワークを無料で利用できます。
https://cloud.google.com/source-repositories/pricing?hl=ja

使い方

VSCodeでターミナルを開き、ローカルリポジトリを初期化して、コミットを作成します。

git init

git add .

git commit -m "Initial commit"

VScodeのサイドメニューから実行する場合は、「ソース管理」を選択し、「リポジトリを初期化する」をクリックします。

次にメッセージ欄に”Initial Commit”と入力して、コミットボタンを押します。

これで、ローリポジトリにコミットできました。

※VSCodeのデフォルトブランチはmainですが、CloudSource Repositoriesのデフォルトブランチはmasterになっています。

次に、以下のページから「開始」を押してクラウド上でリポジトリを作成します。

リポジトリ名とプロジェクトIDを選択して、新しいリポジトリを作成します。

リポジトリ名を作成し、プロジェクトを選択します。

認証方法には、「手動で生成した認証情報」使います。

「Git認証情報を生成して保存します」をクリックすると、Google認証が実行され、以下のスクリプトが表示されます。

シェルスクリプトをファイルに保存して、sourceコマンドでシェルを実行します。

続けて、元の画面のコマンドをコピーして、VScodeのターミナルから実行すると、クラウドのリポジトリにコミットされます。

git remote add google https://source.developers.google.com/p/******

git push --all google

完了したら、ブラウザを再表示で更新します。

以上で最初のコミットが完了しました。

以降は、VSCode上でソースコードを編集し、ローカルでコミットした後、ターミナルから、以下のコマンドを実行すればクラウド上のリポジトリにpushされます。

git push --all google   

逆に、クラウドリポジトリからローカルにコードを持ってくる時にはクローンを作成します。

先ほどの画面の右肩の「クローンを作成」をクリックして、 『またはVSCodeでクローンを作成「クローンを作成」』をクリックすると、VSCodeが立ち上がり、指定したフォルダにクローンが作成されます。

VS CodeとGoogleSource Repositoriesを使えば簡単にコード管理ができそうです。