当社は、ユーザーが GitHub Codespaces をいつでも確実にご利用いただけるよう努力しています。 しかし、当社の管理できる範囲を超えてサービスに影響を及ぼし、計画外のサービスの中断を引き起こす不可抗力が発生する可能性があります。
システム災害復旧シナリオはまれにしか発生しませんが、リージョン全体にわたる停止が発生する可能性に備えておくことをお勧めします。 リージョン全体でサービスが中断した場合、ローカルで冗長化されたデータのコピーは一時的に利用できなくなります。
次のガイダンスでは、codespace がデプロイされているリージョン全体へのサービスの中断を処理する方法を説明します。
Note
リモート リポジトリに頻繁にプッシュすることで、サービス全体の停止による潜在的な影響を減らすことができます。
オプション 1: 別のリージョンに新しい codespace を作る
リージョンが停止した場合、影響を受けていないリージョンで codespace を再び作り、作業を続けることをお勧めします。 この新しい codespace には、GitHub への最後のプッシュ時点までのすべての変更が含まれます。 別のリージョンの手動設定については、「GitHub Codespaces の既定のリージョンを設定する」をご覧ください。
プロジェクトのリポジトリで、開発環境を自動的に復元するために必要なツール、ランタイム、フレームワーク、エディター設定、機能拡張、その他の設定を定義できる devcontainer.json
を設定することで、リカバリ時間を最適化できます。 詳しくは、「開発コンテナーの概要」をご覧ください。
オプション 2: 復旧を待つ
この場合、ユーザーによる操作は必要ありません。 サービスを利用できるようにするために鋭意取り組んでいることをご理解ください。
現在のサービスの状態は、ステータス ダッシュボードで確認できます。
オプション 3: リポジトリをローカルでクローンする、またはブラウザーで編集する
GitHub Codespaces には事前構成された開発環境のメリットがありますが、ソースコードは GitHub でホストされているリポジトリを介して常にアクセス可能である必要があります。 GitHub Codespaces が停止した場合でも、リポジトリをローカルでクローンしたり、GitHub ブラウザー エディターでファイルを編集したりすることができます。 詳しくは、「ファイルを編集する」をご覧ください。
このオプションでは開発環境を設定しませんが、サービスの中断が解決するのを待つ間、必要に応じてソースコードを変更できます。
オプション 4: ローカルのコンテナ化された環境に Dev Containers 拡張機能と Docker を使う
リポジトリに devcontainer.json
がある場合、Visual Studio Code で Dev Containers 拡張機能を使って、ビルドしてリポジトリ用のローカル開発コンテナーにアタッチすることを検討してください。 このオプションのセットアップ時間は、ローカル仕様と開発コンテナセットアップの複雑さによって異なります。 詳しくは、VS Code のドキュメントの「コンテナー内で開発する」をご覧ください。
Note
このオプションを試す前に、ローカルのセットアップが最小要件を満たしていることを確認してください。