# GitHub Codespaces とは

GitHub Codespaces の概要について説明します。

## はじめに

codespace は、クラウドでホストされている開発環境です。 構成ファイルをリポジトリにコミットすることで、GitHub Codespaces のプロジェクトをカスタマイズできます (コードとしての構成とよく呼ばれます)。これにより、プロジェクトのすべてのユーザーに対して繰り返し可能な codespace 構成が作成されます。 「[開発コンテナーの概要](/ja/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers)」を参照してください。

作成する各 codespace は、仮想マシン上で実行されている Docker コンテナー内の GitHub によってホストされます。 仮想マシンの種類は、2 コア、8 GB RAM、32 GB ストレージから、最大 32 コア、128 GB RAM、128 GB ストレージまでの範囲から選択できます。

既定では、codespace 開発環境は一般的な言語とツールの選択を含む Ubuntu Linux イメージから作成されますが、単一の Linux ディストリビューションに基づくイメージを使用し、特定の要件に合わせて構成することができます。 ローカル オペレーティング システムに関係なく、codespace は Linux 環境で実行されます。 Windowsと macOS は、リモート開発コンテナーのオペレーティング システムではサポートされていません。

codespace への接続には、ブラウザー、Visual Studio Code、または GitHub CLI を使うことができます。 接続すると、Docker コンテナー内に配置されます。 外側の Linux 仮想マシン ホストへのアクセスは限定的です。

![Azure仮想マシンで実行されているコード エディターとコード空間の関係を示す図。](/assets/images/help/codespaces/codespaces-diagram.png)

## GitHub Codespaces の使用

クラウドベースのコンピューティング リソースを使用して開発を開始するには、テンプレートまたは任意のブランチから codespace を作成するか、リポジトリにコミットします。 テンプレートから codespace を作成する場合は、空白のテンプレートから開始するか、作業に適したテンプレートを選ぶことができます。

GitHub Codespaces の概要については、「[GitHub Codespaces のクイックスタート](/ja/codespaces/quickstart)」を参照してください。 codespace の作成の詳細については、「[リポジトリの codespace を作成する](/ja/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository)」または「[テンプレートから codespace を作成する](/ja/codespaces/developing-in-codespaces/creating-a-codespace-from-a-template)」を参照してください。 既に作成した codespace に戻る場合は、「[既存の codespace を開く](/ja/codespaces/developing-in-codespaces/opening-an-existing-codespace)」を参照してください。 GitHub Codespaces のしくみの詳細については、「[GitHub Codespaces に深く迫る](/ja/codespaces/about-codespaces/deep-dive)」を参照してください。

### 個人アカウントが所有する codespace の使用

すべての個人 GitHub アカウントには、無料または Pro プランに含まれる GitHub Codespaces の無料使用の月次クォータがあります。 設定を変更したり、支払いの詳細を指定したりせずに、個人アカウントで GitHub Codespaces を使い始めることができます。

Organization 所有のリポジトリから codespace を作成した場合、codespace の使用は Organization (Organization がこれに対して構成されている場合) または個人アカウントに対して課金されます。

毎月含まれているストレージとコンピューティングの使用量を超えて GitHub Codespaces を使い続けるには、支払い情報を入力して、利用限度を設定します。 「[GitHub Codespaces の課金](/ja/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)」をご覧ください。

### Organization 所有の codespace の使用

GitHub Team プランや GitHub Enterprise プランを利用している organization (組織) の所有者は、そのメンバーやコラボレーターによる GitHub Codespaces の使用料を支払うことができます。 これは、Organization が所有するリポジトリから作成された codespace に適用されます。 「[組織内の codespace を誰が所有し、支払うかの選択](/ja/codespaces/managing-codespaces-for-your-organization/choosing-who-owns-and-pays-for-codespaces-in-your-organization)」を参照してください。 Organization または Enterprise アカウントで GitHub Codespaces を使用するための使用制限を設定できます。 「[従量制課金製品の支出を管理するための予算を設定する](/ja/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/managing-the-spending-limit-for-github-codespaces)」を参照してください。

codespace の使用が Organization または Enterprise に課金される場合は、codespace の作成時に表示されます。 「[リポジトリの codespace を作成する](/ja/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository#creating-a-codespace-for-a-repository)」を参照してください。 組織、またはその親エンタープライズに課金される codespace は、組織によって所有され、組織の所有者が削除できます。 「[codespace を削除する](/ja/codespaces/developing-in-a-codespace/deleting-a-codespace#deleting-codespaces-in-your-organization)」を参照してください。

組織所有のリポジトリから codespace を作成できるかどうかは、リポジトリの可視性、組織またはその親企業の設定など、いくつかの要因によって異なります。 詳しくは、「[codespace の作成と削除のトラブルシューティング](/ja/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces#no-access-to-create-a-codespace)」をご覧ください。

### GitHub Codespaces のカスタマイズ

codespace のランタイムとツールをカスタマイズするには、リポジトリ用に 1 つ以上の開発コンテナー構成を作成できます。 開発コンテナー構成をリポジトリに追加すると、ユーザーがリポジトリで実行する作業に適したさまざまな開発環境の選択肢を定義できます。

開発コンテナーを構成せずに、リポジトリから codespace を作成する場合、GitHub Codespaces によって、多くのツール、言語、ランタイム環境が含まれる既定の開発コンテナー イメージを含む環境に、使用中のリポジトリがクローンされます。 テンプレートから codespace を作成する場合は、既定のイメージの上のいくつかの初期構成から開始できます。 「[開発コンテナーの概要](/ja/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers)」を参照してください。

パブリック [ドットファイル](https://dotfiles.github.io/tutorials/) リポジトリを使用して、codespace 環境の側面をカスタマイズできます。 ドットファイルを使用して、シェルのエイリアスと基本設定を設定したり、使用するツールの個人用設定をインストールしたりすることができます。 ブラウザーまたは GitHub Codespaces で Visual Studio Code を使う場合は、[設定同期](https://code.visualstudio.com/docs/editor/settings-sync) を使用して、Visual Studio Code のローカル インストールで設定したのと同じ設定、キーボード ショートカット、スニペット、拡張機能を codespace エディターに付与できます。

「[codespace のカスタマイズ](/ja/codespaces/customizing-your-codespace)」を参照してください。

## Codespaces

への請求

GitHub Codespaces の料金、ストレージ、使用については、「[GitHub Codespaces の課金](/ja/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)」を参照してください。

アカウントに有効な支払方法が登録されていない場合、クォータを使い切ると使用がブロックされます。

有効な支払方法を登録した場合、支出が 1 つ以上の予算により制限されることがあります。 アカウントに設定した予算が、使用量のニーズに適していることを確認してください。 「[従量制課金製品の支出を管理するための予算を設定する](/ja/billing/managing-your-billing/using-budgets-control-spending)」をご覧ください。

GitHub Codespaces のコストは、お使いのアカウントが年単位の請求になっているとしても、常に毎月請求されます。 organization (組織) の所有者と課金マネージャーが organization (組織) の GitHub Codespaces の利用制限を管理する方法については、「[従量制課金製品の支出を管理するための予算を設定する](/ja/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/managing-the-spending-limit-for-github-codespaces)」を参照してください。