# github.dev Web ベース エディター

github.dev Web ベースのエディターを使ってファイルを編集し、変更をコミットできます。

> \[!NOTE] github.dev エディターは現在、パブリック プレビュー 段階にあります。 ユーザーは[ディスカッションで](https://github.com/community/community/discussions/categories/codespaces)フィードバックを提供できます。

## github.dev エディターについて

github.dev エディターでは、完全にブラウザー内で実行される軽量の編集エクスペリエンスが導入されています。 github.dev エディターを使うと、GitHub からファイルとソース コード リポジトリに移動し、コードの変更を行ってコミットできます。 ユーザーは任意のリポジトリ、フォーク、または pull request をエディターで開くことができます。

github.dev エディターは、GitHub.com から誰でも無料で入手できます。

github.dev エディターでは、検索、構文の強調表示、ソース管理ビューなど、Visual Studio Code の多くの利点が提供されます。 Settings Sync を使用して、独自の VS Code 設定をエディターと共有することもできます。 VS Code ドキュメントの「[設定の同期](https://code.visualstudio.com/docs/editor/settings-sync)」をご覧ください。

github.dev エディターは、完全にブラウザーのサンドボックス内で実行されます。 エディターはリポジトリを複製しませんが、代わりに [GitHub Repositories 拡張機能](https://code.visualstudio.com/docs/editor/github#_github-repositories-extension) を使用して、使用するほとんどの機能を実行します。 作業内容は、コミットするまでブラウザーのローカル ストレージに保存されます。 変更内容に常にアクセスできるようにするために、変更を定期的にコミットするようにしてください。

GitHub エディターを使用するには、github.dev にログインする必要があります。

## github.dev エディターを開く

GitHub で github.dev リポジトリを開くには、次のいずれかの方法を使用できます。

* 同じブラウザー タブでリポジトリを開くには、<kbd>.</kbd> キーを押します (GitHub のリポジトリまたは pull request を参照しているとき)。

  新しいブラウザー タブでリポジトリを開くには、<kbd>></kbd> キーを押します。

* URL を "github.com" から "github.dev" に変更します。

* ファイルを表示しているとき、<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-triangle-down" aria-label="More edit options" role="img"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path></svg> ドロップダウン メニューを選び、 **\[github.dev]** をクリックします。

  ![編集アイコンのドロップダウン メニューのスクリーンショット。 オプション \[github.dev\] が濃いオレンジ色の枠線で強調表示されています。](/assets/images/help/codespaces/github-dev-dropdown-option.png)

## Codespaces と github.dev

github.dev と GitHub Codespaces のどちらでも、リポジトリから直接コードを編集できます。 ただし、ユース ケースによって、それぞれの利点が若干異なります。

<div class="ghd-tool rowheaders">

|                | github.dev                                                                                 | GitHub Codespaces                                                                                                                                                                                                                          |
| -------------- | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **コスト**        | フリー。                                                                                       | 個人用アカウントでの 1 か月あたりの使用量の無料クォータについては、「[GitHub Codespaces の課金](/ja/billing/concepts/product-billing/github-codespaces#free-and-billed-use-by-personal-accounts)」を参照してください。                                                                    |
| **可用性**        | GitHub.com のすべてのユーザーが利用できます。                                                               | GitHub.com のすべてのユーザーが利用できます。                                                                                                                                                                                                               |
| **起動**         | github.dev は、キーを押すとすぐに開き、追加の構成やインストールを待たずに、すぐに使い始めることができます。                                | codespace を作成または再開すると、codespace に VM が割り当てられ、`devcontainer.json` ファイルの内容に基づいてコンテナーが構成されます。 この設定では、環境の作成に数分かかる場合があります。 「[リポジトリの codespace を作成する](/ja/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository)」を参照してください。 |
| **計算する**       | 関連付けられたコンピューティングがないので、コードをビルドして実行したり、統合ターミナルを使用したりすることはできません。                              | GitHub Codespaces を使うと、専用の VM を通じてアプリケーションを実行およびデバッグできます。                                                                                                                                                                                  |
| **ターミナル アクセス** | \[なし] :                                                                                    | GitHub Codespaces には、既定で共通のツール セットが用意されています。つまり、ローカル環境の場合とまったく同じようにターミナルを使用できます。                                                                                                                                                           |
| **拡張機能**       | Web で実行できる拡張機能のサブセットのみが拡張機能ビューに表示され、それらをインストールできます。 「[拡張機能の使用](#using-extensions)」をご覧ください。 | GitHub Codespaces では、Visual Studio Code Marketplace のほとんどの拡張機能を使用できます。                                                                                                                                                                     |

</div>

### 引き続き Codespaces で作業する

github.dev でワークフローを始めて、codespace で作業を続けることができます。 実行およびデバッグ ビューまたはターミナルにアクセスしようとすると、github.dev では使えないことが通知されます。

codespace で作業を続行するには、 **[Continue Working on…](作業の続行...)** をクリックし、
**\[Create New Codespace]\(新しい codespace の作成)** を選択して、現在のブランチに codespace を作成します。 このオプションを選択する前に、変更をコミットする必要があります。

<img src="/assets/images/help/codespaces/codespaces-continue-working.png" width="400rem" alt='Screenshot of the "Run and Debug" side bar with a message saying that this feature is not available, and a "Continue Working On" button.' />

## ソース管理の使用

github.dev を使うときは、左側のアクティビティ バーにある \[ソース管理] ビューですべてのアクションが管理されます。 \[ソース管理] ビューについて詳しくは、VS Code のドキュメントの[バージョン管理](https://code.visualstudio.com/docs/editor/versioncontrol)に関する記事をご覧ください。

github.dev は GitHub Repositories 拡張機能を使用して機能を強化するため、変更を一時保存することなくブランチを切り替えることができます。 VS Code ドキュメントの[GitHub リポジトリ](https://code.visualstudio.com/docs/editor/github#_github-repositories-extension)を参照してください。

### 新しいブランチを作成する

1. 現在のブランチがステータス バーに表示されていない場合は、codespace の下部でステータス バーを右クリックし、 **\[ソース コントロール]** を選択します。

2. ステータスバーでブランチ名をクリックします。

   ![VS Code のステータス バーに表示されているブランチ名のスクリーンショット。](/assets/images/help/codespaces/branch-in-status-bar.png)

3. ドロップダウンで、切り替えるブランチをクリックするか、新しいブランチ名を入力して **\[新しいブランチの作成]** をクリックします。

   ![VS Code で新しいブランチを作成するためのドロップダウンのスクリーンショット。](/assets/images/help/codespaces/create-new-branch.png)
   古いブランチで行った変更のうち、コミットされていないものは新しいブランチで使用できます。

### 変更をコミットする

1. アクティビティ バーで、 **\[ソース管理]** ビューをクリックします。

   ![VS Code アクティビティ バーのスクリーンショット。ブランチ アイコンのラベルが付いたソース管理ボタンがオレンジ色の枠線で強調表示されています。](/assets/images/help/codespaces/githubdotdev-source-control-activity-bar-button.png)

2. 変更をステージングするには、変更したファイルの横の \[<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-plus" aria-label="Stage changes" role="img"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z"></path></svg>] をクリックします。複数のファイルを変更してすべてをステージングする場合は、 **\[変更]** の横のものをクリックします。

   ![\[ソース管理\] サイド バーのスクリーンショット。\[変更\] の右側にあるステージング ボタン (プラス記号) が濃いオレンジ色の枠線で強調表示されています。](/assets/images/help/codespaces/githubdotdev-codespaces-commit-stage.png)

3. テキスト ボックスに、行った変更について説明するコミット メッセージを入力します。

   ![\[ソース管理\] サイド バーのスクリーンショット。\[コミット\] ボタンの上にあるテキスト ボックスにコミット メッセージが入力されています。](/assets/images/help/codespaces/githubdotdev-codespaces-commit-message.png)

4. **\[コミット & プッシュ]** をクリックします。

   変更は GitHub でブランチに自動的にプッシュされます。

### pull request を作成する

1. 変更をリポジトリのローカル コピーにコミットしたら、\[ソース管理] サイド バーの上部にある pull request アイコンをクリックします。

   ![\[ソース管理\] サイド バーの上部のスクリーンショット。 pull request アイコンが濃いオレンジ色の枠線で強調表示されています。](/assets/images/help/codespaces/codespaces-commit-pr-button.png)

2. マージ元のローカルブランチとリポジトリ、およびマージ先のリモートブランチとリポジトリが正しいことを確認します。 そして、プルリクエストにタイトルと説明を付けます。

   ![\[GitHub pull request\] サイド バーと pull request を作成するフォームのスクリーンショット。\[タイトル\] と \[説明\] のフィールドが表示されています。](/assets/images/help/codespaces/codespaces-commit-pr.png)

3. **\[作成]** をクリックします。

### 既存のプルリクエストの管理

github.dev を使って、既存の pull request を操作できます。

1. github.dev で開きたい pull request を参照します。
2. `.` キーを押して、github.dev で pull request を開きます。
3. 変更を行ったら、「[変更をコミットする](#commit-your-changes)」の手順を使用して変更をコミットします。 変更はブランチに直接コミットされます。変更をプッシュする必要はありません。

## 拡張機能の使用

github.dev エディターでは、Web で実行するように特に作成または更新された VS Code 拡張機能がサポートされています。 これらの拡張機能は、"Web 拡張機能" と呼ばれます。 Web 拡張機能を作成する方法、または Web で動作するように既存の拡張機能を更新する方法については、VS Code ドキュメントの「[Web 拡張機能](https://code.visualstudio.com/api/extension-guides/web-extensions)」を参照してください。

github.dev で実行できる拡張機能は、拡張機能ビューに表示され、インストールできます。 Settings Sync を使用すると、互換性のある拡張機能も自動的にインストールされます。 詳しくは、VS Code のドキュメントの「[設定の同期](https://code.visualstudio.com/docs/editor/settings-sync)」をご覧ください。

## ファイアウォールの内側で github.dev を使用する

ファイアウォールの内側で作業している場合は、ファイアウォールの許可リストに次の URL を追加する必要があります。

| URL                                               | 使用                                                                                    |
| ------------------------------------------------- | ------------------------------------------------------------------------------------- |
| `https://*.vscode-cdn.net`                        | github.dev は、完全にブラウザー内で実行されます。 そのためには、この URL のエンドポイントから VS Code アセットをダウンロードする必要があります。 |
| `https://update.code.visualstudio.com`            | github.dev は、完全にブラウザー内で実行されます。 そのためには、この URL のエンドポイントから VS Code アセットをダウンロードする必要があります。 |
| `https://api.github.com`                          | GitHub からソース ファイルを取得するために使用されます                                                       |
| `https://vscode-sync-insiders.trafficmanager.net` |                                                                                       |
| *省略可。* Settings Sync を使って設定を同期できるようにします。          |                                                                                       |

github.dev にインストールされているすべての拡張機能は、独立した Web ワーカーの下で実行されます。 これにより、同じブラウザーで実行されている複数の拡張機能の間にセキュリティ レイヤーが追加されます。 その結果、拡張機能から送信される要求 URL は、`https://v--151hfiju3s93ktt2rqh65902gukb27osot905m4g52k40kaea3h6.vscode-cdn.net` のようになります。

[GitHub Repositories](https://marketplace.visualstudio.com/items?itemName=GitHub.remotehub) 拡張機能を使用して、実行時にリポジトリからデータが取得されます。 このデータは、保存されていないファイルと現在表示されているファイルのブラウザー ストレージを除いて github.dev セッション間でローカル コンピューターには格納されません (ページの再読み込みを可能にするため)。 セッション間でローカルに格納される非リポジトリ データは、一部のユーザー設定と、GitHub の認証フローによって送信される資格情報のみです。

## トラブルシューティング

github.dev を開くときに問題が発生する場合は、次の手順を試してください。

* GitHub にサインインしていることを確認します。
* 広告ブロッカーを無効にします。
* ブラウザーで incognito 以外のウィンドウを使って、github.dev を開きます。

### 既知の制限事項

* 現在、github.dev エディターは、Chrome (およびその他の各種 Chromium ベース ブラウザー)、Edge、Firefox、Safari でサポートされています。 これらのブラウザーの最新バージョンを使用することをお勧めします。
* 使用しているブラウザーによっては、一部のキー バインドが機能しない場合があります。 これらのキー バインドの制限事項は、VS Code ドキュメントの[既知の制限と対応](https://code.visualstudio.com/docs/remote/codespaces#_known-limitations-and-adaptations)に関するセクションに記載されています。
* 使っているローカル キーボード レイアウトによっては、`.` キーで github.dev を開けない場合があります。 その場合は、URL を `github.com` から `github.dev` に変えることで、任意の GitHub リポジトリを github.dev で開くことができます。
* Web エディターでドキュメントまたはコードを集中的に記述する場合、一部のコミットのプッシュに関する問題が発生する可能性があります。 これを解決するには、API レート制限がリセットされるまで数分待ちます。