AWS を無料でお試しください

まずは無料で始める »
またはコンソールにサインイン

12 か月間の AWS 無料利用枠と、24 時間年中無休のカスタマーサービスやサポートフォーラムなどの AWS ベーシックサポート機能を利用できます。

AWS アカウント作成の流れはこちら »


Q: AWS CodeCommit とは何ですか?
AWS CodeCommit は、プライベート Git リポジトリをホストする、安全で高度にスケーラブルなマネージド型のソース管理サービスです。AWS CodeCommit によって、インフラストラクチャのスケーリングに関する不安要素は排除され、お客様が独自のソース管理システムを稼働させる必要がなくなります。AWS CodeCommit を使用してコードからバイナリまであらゆるものを保存できます。また、CodeCommit は既存の Git ツールとシームレスに連動します。

Q: Git とは何ですか?
Git とは、オープンソースの分散型バージョン管理システムです。AWS CodeCommit のリポジトリを操作するには、Git コマンドラインインターフェイス (CLI)、または利用可能な任意の Git クライアントを使用します。Git の詳細は、Git に関するドキュメントを参照してください。AWS CodeCommit と Git の併用に関する詳細は、Getting Started with AWS CodeCommit を参照してください。

Q: AWS CodeCommit はどのようなユーザー向けですか?
AWS CodeCommit は、コードを保存およびバージョン化するために安全で信頼性が高く、スケーラブルなソース管理システムを必要とするソフトウェア開発者に向けて設計されています。さらに、使いやすく、バージョン管理が可能な完全マネージド型のデータ保存ツールをお求めのユーザーは、誰でも AWS CodeCommit をお使いいただけます。例えば、IT 管理者は AWS CodeCommit を使用してスクリプトや構成を保存できます。ウェブデザイナーは AWS CodeCommit を使用して HTML ページや画像を保存できます。

Q: AWS CodeCommit は、他の Git ベースのソース管理システムと何が違うのですか?
AWS CodeCommit には、他の Git ソース管理システムでは利用できない、以下の多くの特徴があります。

  • 完全マネージド型 – AWS CodeCommit により、ソース管理サーバーをホスト、維持、バックアップ、スケールする必要がなくなります。
  • 安全性 – AWS CodeCommit は通信中および保管中のファイルを自動的に暗号化します。AWS CodeCommit は、AWS Identity and Access Management (IAM) と統合されているため、ユーザー固有のアクセス許可をリポジトリに設定できます。
  • 高可用性 – AWS CodeCommit は Amazon S3 や Amazon DynamoDB など、高度にスケーラブルで、冗長性、耐久性が高い AWS のサービスを利用して構築されます。
  • スケーラブル – AWS CodeCommit を使用してファイルをいくつでも保存できます。リポジトリのサイズに制限はありません。
  • より早い開発ライフサイクル – AWS CodeCommit を使用して、AWS クラウドの構築、ステージング、プロダクション環境とリポジトリを密接に行えます。これにより開発ライフサイクルの速度と頻度が上昇します。

Q: AWS CodeCommit とバージョン化された S3 バケットは何が違いますか?
AWS CodeCommit は共同でのソフトウェア開発に向けて設計されています。複数のファイルにかけて変更を一括管理でき、並行ブランチ化、バージョン比較(「diffing」)を利用できます。それに対して、Amazon S3 のバージョニングは、個々のファイルの過去のバージョンを復旧できますが、複数のファイルにかけた変更の一括追跡や、ソフトウェアの共同開発に必要なその他の特徴はサポートしていません。

Git とは何ですか?Git とは、オープンソースの分散型バージョン管理システムです。AWS CodeCommit のリポジトリを操作するには、Git コマンドラインインターフェイス (CLI)、または利用可能な任意の Git クライアントを使用します。Git の詳細は、Git に関するドキュメントを参照してください。AWS CodeCommit と Git の併用に関する詳細は、Getting Started with AWS CodeCommit を参照してください。

Q: どうすれば AWS CodeCommit の利用を開始できますか?
AWS マネジメントコンソールにサインインしてリポジトリを作成し、Git を使用してリポジトリを操作できます。サービスの説明が必要なお客様は、ご利用開始にあたってをご覧ください。詳しいチュートリアルが記載されています。

Q: リポジトリを作成するにはどうすればよいですか?
AWS マネジメントコンソールから、または AWS コマンドラインインターフェイス (AWS CLI)、AWS SDK、AWS CodeCommit API を使用してリポジトリを作成できます。

Q: どうすればリポジトリのファイルを更新できますか?
Git を使用してリポジトリを操作します。例えば、git clone コマンドを使用して AWS CodeCommit リポジトリのローカルコピーを作成できます。ローカルファイルに変更を加え、変更を保存する準備ができたら git commit コマンドを使用します。最後に、git push コマンドを使用して AWS CodeCommit リポジトリに変更をアップロードします。Getting Started with AWS CodeCommit で、詳しい手順をご確認ください。

Q: どうすれば既存のリポジトリを AWS CodeCommit にインポートできますか?
Git を使用して、任意の Git リポジトリを AWS CodeCommit にインポートできます。Subversion、Perforce などのその他のリポジトリに関しては、まず Git インポーターを使用して Git リポジトリに移行します。Git リポジトリをインポートする詳しい手順は、Migrate an Existing Repository to AWS CodeCommit を参照してください。その他のリポジトリの Git へのインポート手順は、Git の移行に関するドキュメントを参照してください。

Q: 現在 AWS CodeCommit はどの Git 操作をサポートしていますか?
現在、AWS CodeCommit は clone、pull、push、fetch コマンドをサポートしています。

Q: AWS CodeCommit は Git のサブモジュールをサポートしていますか?
はい。AWS CodeCommit はサブモジュールを含む Git リポジトリと合わせて使用できます。

Q: AWS CodeCommit を使用する際のサービスの上限はどのくらいですか?
サービスの上限について詳しくは、Limits in AWS CodeCommit をご覧ください。

Q: CodeCommit に保存できる各ファイルの最大サイズはどのくらいですか?
リポジトリの各ファイルが 2 GB を超えることはできません。

Q: どうすればリポジトリをバックアップできますか?
git clone を完全に実行してローカルコピーを作成している場合、そのコピーを使用してデータを復元できます。追加のバックアップを作成する場合は、複数の方法があります。1 つは Git をバックアップサーバーにインストールし、git clone コマンドを使用したスケジュールジョブを実行して定期的にリポジトリのスナップショットを作成することです。新しいリビジョンのみをコピーする場合は git clone ではなく git pull を使用します。バックアップサーバーおよびポーリング頻度の設定によっては、これらの操作によって追加のユーザーまたはリクエスト料金、またはその両方が発生する可能性があることに注意してください。

Q: どうすれば削除した AWS CodeCommit リポジトリを復元できますか?
AWS CodeCommit リポジトリの削除は、取り消しできない一方通行の操作です。削除したリポジトリを復元するには、再度リポジトリを作成し、バックアップまたは完全なクローンからのローカルコピーを使用してデータをアップロードする必要があります。リポジトリを削除できるユーザーを制限するために、IAM ポリシーと MFA による保護の両方を使用することをお勧めします。詳細は、FAQ の「セキュリティ」セクションの質問「AWS Identity and Access Management (IAM) を AWS CodeCommit へのアクセスの管理に使用できますか?」をご覧ください。

Q: どうすれば AWS CodeCommit でコードレビューを管理できますか?
コードレビューに関しては、Review Board など、Git と互換性のある任意のコードレビューシステムを使用できます。

Q: どうすれば継続的統合システムを AWS CodeCommit に統合できますか?
Git を使用して AWS CodeCommit からコードを取得するように、継続的統合 (CI) システムを設定できます。AWS CodeCommit での CI システムの使用例については、AWS CodeCommit と Jenkins との統合に関するブログの投稿をご覧ください。

Q: どうすれば AWS CodeCommit を使用してウェブフックを作成できますか?
Amazon Simple Notification Service (SNS) コンソールでは、HTTP エンドポイントとウェブフックの対象となる URL を使用した SNS トピックを作成できます。その後、AWS CodeCommit コンソールからトリガーを使用して、リポジトリイベントに対してその SNS トピックを構成できます。

Q: セキュリティ分析や運用上のトラブルシューティングを目的として、アカウントの AWS CodeCommit Git オペレーション、および API コールの履歴を取得できますか?
はい。自分のアカウントで呼び出した CodeCommit Git オペレーション、および API コールの履歴を取得するには、AWS マネジメントコンソールで AWS CloudTrail を有効にします。Git プッシュでの個別のコミットによるロギングは、現在サポートされていません。詳細については、CloudTrail ユーザーガイドをご覧ください。

Q: AWS Identity and Access Management (IAM) を AWS CodeCommit へのアクセスの管理に使用できますか?
はい。AWS CodeCommit はリソースレベルのアクセス許可をサポートしています。AWS CodeCommit の各リポジトリに対して、どのユーザーがどのアクションを実行できるかを指定できます。また、CodeCommit のアクションに対する AWS Multi-Factor Authentication (MFA) も指定できます。これにより、リポジトリの削除などの、取り消しのきかないアクションに対して、さらに高度な保護を設定できます。AWS CodeCommit API に加えて、git pull および git push をアクションとして指定することで、Git クライアントからのアクセスを管理することもできます。例えば、ユーザーにリポジトリに対する git pull を許可し、git push を禁止することで読み取り専用のユーザーを作成できます。AWS CodeCommit で IAM を使用する方法について詳しくは、Access Permissions Reference を参照してください。MFA を使用して API アクセスを許可する方法の詳細については、「MFA 保護 API アクセスの設定」を参照してください。

Q: AWS CodeCommit はどの通信プロトコルをサポートしていますか?
HTTPS または SSH、もしくはその両方を使用して AWS CodeCommit と通信できます。HTTPS を使用するには、まず AWS CLI をインストールします。AWS CLI で、AWS の認証情報で設定できる Git の認証情報ヘルパーをインストールします。認証情報ヘルパーは AWS CodeCommit に対するすべての HTTPS リクエストに、Signature Version 4 の署名仕様を使用して署名します。SSH を使用するには、ユーザーは公開とプライベートのキーペアを作成し、公開キーを IAM ユーザーに追加します。プライベートキーは AWS CodeCommit との通信を暗号化します。HTTPS および SSH アクセスの詳しい設定手順は、Setting up AWS CodeCommit ページを参照してください。

Q: AWS CodeCommit にアクセスするには、ファイアウォールのどのポートを開けばよいですか?
ポート 22 (SSH) またはポート 443 (HTTPS) で、AWS CodeCommit のサービスエンドポイントに対するアウトバウンドアクセスを開く必要があります。

Q: どうすれば AWS CodeCommit のリポジトリを暗号化できますか?
保管中のリポジトリは自動的に暗号化されます。お客様の操作は必要ありません。AWS CodeCommit は AWS Key Management Service (KMS) を使用してリポジトリを暗号化します。最初のリポジトリを作成すると、AWS が管理する CodeCommit キーがお客様の AWS アカウントに作成されます。詳細は、Encryption for AWS CodeCommit Repositories を参照してください。

Q: 複数のアカウントからリポジトリにアクセスできますか?
はい。AWS アカウントで IAM のロールを作成し、他の AWS アカウントの IAM ユーザーにリポジトリへのアクセス権を委任できます。これにより、その IAM ユーザーは AWS CLI を設定して AWS Security Token Service (STS) を使用し、コマンドを実行する際にロールを継承できます。詳細は、AWS CLI に関するドキュメントの Assuming a Role を参照してください。

Q: AWS CodeCommit はどのリージョンをサポートしていますか?
CodeCommit のリージョン別の可用性の詳細については、製品およびサービス一覧 (リージョン別) を参照してください。

Q: AWS CodeCommit にはどのくらいの費用がかかりますか?
AWS CodeCommit の費用は、アクティブなユーザー 1 人につき 1 USD/月です。アクティブなユーザーごとに、月に 10 GB のストレージと 2,000 件の Git リクエストがアカウントに許容量として割り当てられ、ご利用いただけます。割り当てられたストレージと Gbit リクエスト数に未使用分があっても、以降の月に繰り越されることはありません。ユーザーに対するストレージまたは Git リクエスト数を増やす必要がある場合は、1 GB あたり毎月 0.06 USD、Git リクエスト 1 件あたり 0.001 USD が追加分として請求されます。ユーザーは必要なだけ Git リポジトリを保存できます。使用量はすべてのリージョンの合計が毎月計算され、自動的に請求額に適用されます。詳細については、料金表ページをご覧ください。

Q: AWS CodeCommit における、アクティブなユーザーの定義とは何ですか?
アクティブなユーザーとは、その月に Git リクエストまたは AWS マネジメントコンソール使用して AWS CodeCommit リポジトリにアクセスするすべての一意の AWS アイデンティティ (IAM ユーザー、IAM ロール、フェデレーティッドユーザー、ルートアカウント) を指します。一意の AWS アイデンティティを使用して CodeCommit にアクセスするサーバーは、アクティブなユーザーとみなされます。

Q: 1 か月あたりの許容残数が減少するのはどの Git リクエストですか?
Git リクエストには、リポジトリのオブジェクトを転送するすべての送信または取得が含まれます。ローカルとリモートのブランチが最新の状態であるためにいかなるオブジェクトも転送されない場合、Git リクエストの許容残数が減少することありません。