Gitpod IDE in the cloud

Ephemeral workspaces, it's all-ops in the cloud

Tom • Around the Web, Tools & Development •

Your workspace in the cloud

Similar to Github Codespaces, Gitpod enables you to completely develop software solutions in the cloud, directly in the browser. Behind the scenes, it uses Kubernetes and Docker-images to allow you to code in an IDE directly in the browser.

Many git providers

One main difference to Github Codespaces is that you can currently choose from three providers: Github, Gitlab as well as BitBucket. This makes Gitpod quite agnostic when it comes to the ownership of your data. Because Gitpod doesn’t host your version control system, there’s no lock-in effect.

Ephemeral workspaces

The key concept to understanding Gitpod is its management of state. You don’t have one single workspace where you code all the time. Instead, each workspace can be created for a single task, for example when implementing a new feature or fixing a bug.

A workspace is just a docker image that gives you access to VS Code Server, a variant of the well-known VS Code for usage in browsers. Each time you create a new workspace, you basically run a fresh installation version of VS Code. All settings, extensions and customizations are also the default ones with every workspace creation.

To not do the whole setup of installing extensions and themes every time you create a new workspace, Gitpod provides you the option to create a YAML-file, which stores all those settings.

This file gets checked-in to the version control system and is therefore the set of instructions for Gitpod whenever you create a new workspace on the branch the next time. This also allows you to have different configs with different branches, which can enable completely different workflows.

When you're done with the task, you can just delete the workspace and create a new one for the next task.

Background installation

One great feature of Gitpod is its ability to install dependencies in the background, even while you're not using Gitpod. For example, Gitpod ensures that all my Node.js-dependencies are installed before I actually create a new workspace. This can save you quite some time, as there's no delay between creating a new workspace and starting the code. Everything is installed already.

Usage of Gitpod

Gitpod has a free tier with 50 hours per month, so there’s plenty of time to explore the service in detail by yourself. I’m using Gitpod for basically all my private projects when it comes to coding, and it served me very well over the last few months.

Actions

Feedback

Suggested Posts