GitHub最近推出了他们新的Github代码空间服务--一个由Visual Studio代码支持的在线、浏览器内集成开发环境。此环境允许用户快速加载虚拟机和完整的代码编辑界面,所有这些都可以在浏览器中访问,而不必在用户的机器上安装任何东西。如果您熟悉Amazon Web Services的Cloud 9IDE或其前身C9.io等产品,您可能会觉得非常熟悉。
作为少数获得GitHub Codespaces测试版程序访问权限的幸运儿之一,我有机会对其进行测试,并代表下面的亚里士多德团队提出了我的想法。
需要对亚里士多德元数据主页做一些小的修改(包括制作这篇博客),并且很容易打开一个CodeSpace就可以开始工作了。打开一个项目的代码空间就像GitHub所说的那样简单--点击存储库上的“在CodeSpace中打开”,它就会完成剩下的工作--不需要配置或停用服务器,一切都由你来处理。
我们的网站是一个基本的Jekyll静态站点,并且提供了对Codespaces中已经可用的内容的很好的基本测试。加载新的CodeSpace只需不到2分钟,与AWS Cloud9不相上下。作为一个在Cloud9还是C9.io的时候就使用过它的人,Codespaces让我想起了很多--这是一种为GitHub项目打开编辑器和虚拟机的简单方式。
Codespaces的文档也很棒。我不知道的是,GitHub还可以将您的点文件直接加载到每个新的CodeSpace中,因此您的首选项(.bashrc和类似文件)将在不同的Codesspace中跟随您。
虽然如果您使用不同的浏览器打开您的工作区(出于下面的原因,我不得不这样做),但是您的配色方案偏好不会在不同的浏览器之间跟随您。我不是Visual Studio Code的常规用户,但它似乎包含了您期望从浏览器中获得的所有标准功能,例如语法突出显示、Vim和eMac键绑定(它们在浏览器中工作得很好),以及默认情况下启用的autosave(自动保存),但我立即禁用了它。
您还可以将本地计算机中的文件拖放到Codespaces文件系统中,并在浏览器中预览和编辑某些非文本文件,如图像,这两种文件对于Web开发都非常方便。
Codespaces包括一个功能强大的终端编辑器,它似乎是基于常用的Debian图像。我唯一不喜欢的是使用下拉菜单而不是选项卡来访问不同的终端,但这是一个次要的细节。
我对C9.io最大的问题之一是缺乏对Docker的支持,当AWS收购Cloud9时,这个问题得到了解决,但伴随而来的是配置亚马逊机器的额外复杂性。因此,能够简单地在浏览器中运行Docker是非常棒的。默认情况下不安装docker-compose,我还没有机会看到它是如何工作的。
我发现终端仿真器唯一的问题是,你只能右击粘贴到Chrome或Edge等基于Chromium的浏览器上,火狐用户要小心了。
Codesaces非常适合处理端口转发,因此您只需启动服务器进程(在非端口80端口上),如果GitHub检测到localhost:port组合,则可以通过单击URL来访问它,如下所示:
加载和重新加载Jekyll很快,当我单击转发的链接或切换选项卡来预览对网站的更改时,它已经刷新了。然而,这是另一个仅限Chromium的功能,在Firefox中,clikCable端口转发链接不起作用,这似乎在Firefox中得到了修复。
另一个小问题是,如果不登录GitHub,你无法在私人窗口或不同的浏览器中打开你的网站来查看服务器。这不是一个大问题,但是如果你试图在不同的浏览器下或者在注销时查看你的站点是什么样子,这可能会很麻烦。
这太棒了,可能会成为我的默认IDE-作为一个联合创始人,花在开发人员身上的时间更少了,而花在会议、写电子邮件、战略论文、信件和招标上的时间更多了,这真是令人惊叹!我的大多数日常工具都是基于Windows的,所以我花了很多时间让Windows Subsystem for Linux与我日常工作流程的其余部分一起工作,这本身就令人头疼。因此,能够快速签出分支机构、进行更改并承担本地计算机的一些负载似乎非常有希望。
这里有很多我还没有机会看过的功能,包括协作工作区、Git集成和连接本地版本的Visual Studio,但是从快速浏览来看,一切都很顺利。
总体而言,这是开始项目的一种极其快速的方式,我期待着在我有机会获得在Docker-Compose下的代码空间中运行的亚里士多德元数据注册中心软件及其所有依赖项之后编写更新。
亚里士多德元数据注册中心对云创新并不陌生。如果您想了解如何访问像Github的Codespaces这样简单的云托管的元数据注册中心,请与我们联系。