什么是 gitpod:它实际上做了什么?

what is gitpod: what does it actually do?

gitpod GitHub 页面显示

Gitpod is an open-source Kubernetes application providing prebuilt, collaborative development environments in your browser - powered by VS Code.

但是,我无法理解它到底做了什么。谁能解释一下。

Gitpod co-founder 这里。

Gitpod = server-side-dev-envs + dev-env-as-code + 预构建 + IDE + 协作。

  1. 从 GitHub、Gitlab 或 Bitbucket 上的 Git 存储库,Gitpod 可以在几秒钟内为您启动一个 server-side-dev-environment。这是一个您可以完全自定义的 docker 容器,其中包括您的源代码、git-Terminal、VS 代码扩展、您的 IDE (Theia IDE) 等。开发环境足够强大 运行 您的应用甚至 side-services 数据库。
  2. 步骤 (1) 很容易重复和再现,因为它是自动化的,version-controlled 并在整个团队中共享。我们称之为 dev-environment-as-code。为您的开发环境考虑 infrastructure-as-code。
  3. 在 (1) 之后,您立即 ready-to-code,因为您的工作区已经编译并且您的代码的所有依赖项都已下载。 Gitpod 通过 运行 在 git-push 上构建您的构建工具(就像 CI/CD 会做的那样)和“预构建”并存储您的工作区,直到您需要它。在 Gitpod 中审查 PR 时,这真的很棒。
  4. 一旦您的开发环境 server-side 和您的 IDE 运行 在浏览器中运行,协作就会变得更加容易。将开发环境的快照发送给同事就像发送 URL 一样简单。 IDE 和 dev-environments.
  5. 中的实时共享编码也是如此

在一天结束时,您开始将您的开发环境视为短暂的东西:您启动它们,编写代码,推送代码,然后忘记了您的开发环境。接下来,您将使用全新的开发环境。

不用在本地机器上弄乱、修改和维护开发环境,您会感到轻松自在。

Gitpod 可用于 gitpod.io,或 self-hosted Kubernetes、GCP 或 AWS。

为了说明 Gitpods,请注意 GitLab 13.5(2020 年 10 月)添加了一项新功能

Launch Gitpod Workspaces directly from GitLab

Engineers have complicated development environments that can take time to set up and make testing changes or exploring new projects challenging. Often getting started with a project involves following documentation, installing dependencies, and hoping there are no conflicts with other services running. This process can be time consuming, error prone, and may not replicate the configuration accurately to test and contribute to a project.

With Gitpod integrated into GitLab, you can easily launch your Gitpod Workspace directly from the GitLab interface. When editing a project on GitLab, a new dropdown option exists to open that project in GitPod:

Gitpod allows you to define your project’s configuration in code so you can launch a prebuilt development environment with one click.

These environments are configured through a .gitpod.yml file inside of the project and include options for Docker configuration, start tasks, editor extensions and more. This flexible configuration, which is part of the project’s code, allows developers to get started working on a project quickly. Try this today with the GitLab project which is already setup to work with Gitpod.

Thanks to Cornelius Ludmann from Gitpod for contributing this!

https://about.gitlab.com/images/13_5/phikai-launch-gitpod-editor.gif -- Launch Gitpod from the GitLab UI

See Documentation and Issue.


以及 GitLab 14.2(2021 年 8 月)

Launch a preconfigured Gitpod workspace from a merge request

Launch a preconfigured Gitpod workspace from a merge request

The Gitpod integration, introduced in GitLab 13.5, helps you manage your complicated development environments.
Once you define your project’s configuration in code, you can launch a prebuilt, cloud-based development environment with a single click.

This convenient workflow has made it faster than ever to generate new changes, but launching a Gitpod environment to review an existing merge request meant building an environment against the main branch before switching to the target branch and building again.

Now, in GitLab 14.2, you can launch Gitpod directly from the merge request page, preconfigured to use the target branch, to speed up your reviews and reduce the need for context switching.
Enable the Gitpod integration, and your merge requests display a grouped Open in button, so you can open the merge request in either the Web IDE or Gitpod.

Thanks to Cornelius Ludmann from Gitpod for this contribution!

https://about.gitlab.com/images/14_2/create-gitpod-in-mr-view.png -- Launch a preconfigured Gitpod workspace from a merge request

See Documentation and Issue.