When comparing Google Cloud Shell vs GitHub Codespaces, the Slant community recommends Google Cloud Shell for most people. In the question“What are the best cloud IDEs?” Google Cloud Shell is ranked 10th while GitHub Codespaces is ranked 18th. The most important reason people chose Google Cloud Shell is:
Google Cloud Shell is free for Google Cloud Platform customers.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Inexpensive
Google Cloud Shell is free for Google Cloud Platform customers.
Pro Already has Google Cloud SDK and other tooling installed
Thus eliminating a setup step for interacting with Google Cloud.
Pro Already provisioned with Google Application Default Credentials
This makes it easier to run/test code that interacts with Google APIs.
Pro VM is always up-to-date, making it more secure
Because the VM image is managed by Google and either provided entirely by Google or configured by a Dockerfile (which is regularly rebuilt), packages are far more likely to be kept up-to-date with the last patches and security fixes compared with Cloud IDEs that give you your own VM and make you, yourself, in charge of applying updates.
Pro Supports multiple open files at the same time
One can split the screen and edit two files at once, making it easy to edit one file while consulting the contents of some other file.
Pro Supports editor and terminal in the same screen
This makes it easy to run commands while editing files at the same time.
Pro Built-in integration with tmux
Pro Supports "Boost Mode"
Allowing you to provision a more powerful instance when necessary.
Pro Supports custom software packages via a Dockerfile configuring the Cloud Shell image
With Cloud Shell custom environments (an early access feature), it is possible to specify a "Dockerfile" to specify a custom VM image to use for the Cloud Shell environment. This Dockerfile can be used to install packages with apt-get, npm, pip, etc. globally.
Pro Includes Eclipse Orion IDE already configured
Eclipse Orion can be difficult to setup/configure if creating a do-it-yourself VM running Eclipse. This makes it easier to have a working IDE.
Pro Preferences are synced
Your Visual Studio local preferences and extensions are saved within GitHub, allowing you to use your configurations on the go.
Pro One-click experience
Designed to make contributing to a repository easier, all it takes to start the cloud IDE is its dedicated button within the repository page.
Pro Visual Studio Codespaces extensions works as-is
If you are a customer for Visual Studio Codespaces, your extension to control GitHub Codespaces will also work and you will be able to use your Visual Studio Code to interact to the Codespace instead of using the Web IDE if need be.
Pro Extensible and configurable
Borrowing from its bigger sister, Visual Studio Codespaces, which is also based on Visual Studio Code, any VS Code extensions work outside the box, no gotchas.
Pro Customizable environments
Environments can be customized in the user-level or the repository using a container declaration file, allowing the environments to be tailored according to the user and the target project
Cons
Con Ephemeral Disk
Software installed globally as root (such as via "sudo apt-get install..." ) can be lost when restarting Cloud Shell; any software that needs to be persistent has to be installed in the user directory (or made part of the Docker image for the custom Cloud Shell image).
Con Minimal UI
Cloud Shell's editor is not as featureful as some alternatives.
Con Limited to GitHub
As this is a GitHub Product, do not expect it to work with the likes of GitLab or BitBucket. If you want to use third party VCS providers, you might want to use Visual Studio Codespaces instead.
Con Limited to 5 Codespaces instances
GitHub Codespaces currently limits you to 5 concurrent working codespaces. You have to delete another to start another codespace.
Con Early-Access Software
Currently invite-only, expect GitHub Codespaces to have some bugs until its GA release.