Skip to main content

The github.dev web-based editor

Use the github.dev web-based editor from your repository or pull request to create and commit changes.

Note: The github.dev web-based editor is currently in beta preview. You can provide feedback in our Discussions.

About the web-based editor

The web-based editor introduces a lightweight editing experience that runs entirely in your browser. With the web-based editor, you can navigate files and source code repositories from GitHub, and make and commit code changes. You can open any repository, fork, or pull request in the editor.

The web-based editor is available to everyone for free on GitHub.com.

The web-based editor provides many of the benefits of Visual Studio Code, such as search, syntax highlighting, and a source control view. You can also use Settings Sync to share your own VS Code settings with the editor. For more information, see "Settings Sync" in the VS Code documentation.

The web-based editor runs entirely in your browser’s sandbox. The editor doesn’t clone the repository, but instead uses the GitHub Repositories extension to carry out most of the functionality that you will use. Your work is saved in the browser’s local storage until you commit it. You should commit your changes regularly to ensure that they're always accessible.

You must be signed in to use the web-based editor.

Opening the web-based editor

You can open any GitHub repository in the web-based editor in either of the following ways:

  • To open the repository in the same browser tab, press . while browsing any repository or pull request on GitHub.

    To open the repository in a new browser tab, press >.

  • Change the URL from "github.com" to "github.dev".

  • When viewing a file, use the dropdown menu next to and select Open in github.dev.

    Edit file button dropdown menu

Codespaces and the web-based editor

Both the web-based editor and GitHub Codespaces allow you to edit your code straight from your repository. However, both have slightly different benefits, depending on your use case.

web-based editorGitHub Codespaces
CostFree.Costs for compute and storage. For information on pricing, see "About billing for GitHub Codespaces."
AvailabilityAvailable to everyone on GitHub.com.Available for organizations using GitHub Team or GitHub Enterprise Cloud.
Start upThe web-based editor opens instantly with a key-press and you can start using it right away, without having to wait for additional configuration or installation.When you create or resume a codespace, the codespace is assigned a VM and the container is configured based on the contents of a devcontainer.json file. This set up may take a few minutes to create the environment. For more information, see "Creating a Codespace."
ComputeThere is no associated compute, so you won’t be able to build and run your code or use the integrated terminal.With GitHub Codespaces, you get the power of dedicated VM on which you can run and debug your application.
Terminal accessNone.GitHub Codespaces provides a common set of tools by default, meaning that you can use the Terminal exactly as you would in your local environment.
ExtensionsOnly a subset of extensions that can run in the web will appear in the Extensions View and can be installed. For more information, see "Using extensions."With GitHub Codespaces, you can use most extensions from the Visual Studio Code Marketplace.

Continue working on Codespaces

You can start your workflow in the web-based editor and continue working on a codespace, provided you have access to GitHub Codespaces. If you try to access the Run and Debug View or the Terminal, you'll be notified that they are not available in the web-based editor.

To continue your work in a codespace, click Continue Working on… and select Create New Codespace to create a codespace on your current branch. Before you choose this option, you must commit any changes.

A screenshot that shows the "Continue Working on" button in the UI

Using source control

When you use the web-based editor, all actions are managed through the Source Control View, which is located in the Activity Bar on the left hand side. For more information on the Source Control View, see "Version Control" in the VS Code documentation.

Because the web-based editor uses the GitHub Repositories extension to power its functionality, you can switch branches without needing to stash changes. For more information, see "GitHub Repositories" in the VS Code documentation.

Create a new branch

  1. Se o branch atual não for mostrado na barra de status, na parte inferior do seu codespace, clique com o botão direito do mouse na barra de status e selecione Controle do código-fonte.
  2. Clique no nome do branch na barra de status. O branch na barra de status
  3. No menu suspenso, clique no branch para o qual deseja alternar ou insira o nome de um novo branch e clique em Criar branch. Escolha no menu do branch Any uncommitted changes you have made in your old branch will be available on your new branch.

Commit your changes

  1. Na Barra de Atividades, clique na exibição Controle do Código-Fonte. Exibição Controle do Código-Fonte
  2. Para preparar as alterações, clique em + ao lado do arquivo que você alterou ou ao lado de Alterações se tiver alterado vários arquivos e quiser preparar todos eles. Barra lateral do controle do código-fonte com o botão de preparo realçado
  3. Digite uma mensagem do commit que descreve a alteração que você fez. Barra lateral do controle do código-fonte com uma mensagem de commit
  4. Para fazer commit das alterações em fase de preparação, clique na marca de seleção na parte superior da barra lateral de controle de origem. Clique no ícone da tag de verificação
  5. Once you have committed your changes, they will automatically be pushed to your branch on GitHub.

Create a pull request

  1. Depois de fazer commit das alterações na cópia local do repositório, clique no ícone Criar Solicitação de Pull. Barra lateral do controle do código-fonte com o botão de preparo realçado
  2. Verifique se o branch local e o repositório do qual você está fazendo merge, o branch remoto e o repositório no qual você está fazendo merge estão corretos. Em seguida, dê ao pull request um título e uma descrição. Barra lateral do controle do código-fonte com o botão de preparo realçado
  3. Clique em Criar.

Working with an existing pull request

You can use the web-based editor to work with an existing pull request.

  1. Browse to the pull request you'd like to open in the web-based editor.
  2. Press . to open the pull request in the web-based editor.
  3. Once you have made any changes, commit them using the steps in Commit your changes. Your changes will be committed directly to the branch, it's not necessary to push the changes.

Using extensions

The web-based editor supports VS Code extensions that have been specifically created or updated to run in the web. These extensions are known as "web extensions". To learn how you can create a web extension or update your existing extension to work for the web, see "Web extensions" in the VS Code documentation.

Extensions that can run in the web-based editor will appear in the Extensions View and can be installed. If you use Settings Sync, any compatible extensions are also installed automatically. For information, see "Settings Sync" in the VS Code documentation.

Troubleshooting

If you have issues opening the web-based editor, try the following:

  • Make sure you are signed in to GitHub.
  • Disable any ad blockers.
  • Use a non-incognito window in your browser to open the web-based editor.

Known limitations

  • The web-based editor is currently supported in Chrome (and various other Chromium-based browsers), Edge, Firefox, and Safari. We recommend that you use the latest versions of these browsers.
  • Some keybindings may not work, depending on the browser you are using. These keybinding limitations are documented in the "Known limitations and adaptations" section of the VS Code documentation.
  • . may not work to open the web-based editor according to your local keyboard layout. In that case, you can open any GitHub repository in the web-based editor by changing the URL from github.com to github.dev.