Github最近推出了新的Github代码空间服务-一种由Visual Studio Code支持的在线浏览器内集成开发环境。这种环境使某人可以快速加载虚拟机和完整的代码编辑界面,而无需在用户计算机上安装任何内容即可在浏览器中访问所有代码。如果您熟悉Amazon Web Services的Cloud 9 IDE或其前身C9.io之类的产品,则可能会感到非常熟悉。
作为能够访问GitHub Codespaces Beta程序的少数幸运者之一,我有机会对它进行了测试,并代表下面的Aristotle团队提出了自己的想法。
第一印象需要对Aristotle Metadata主页进行一些小的更改(包括制作此博客文章),并且很容易打开Codespace即可开始工作。从根本上来说,为项目打开代码空间就像GitHub所说的那样-单击存储库上的“在代码空间中打开”,其余的工作就完成了-无需配置或停用服务器,所有这些都由您处理。
如何打开代码空间
我们的网站是Jekyll的基本静态站点,并且对Codespaces中已经提供的功能进行了很好的基本测试。加载新的Codespace花费了不到2分钟的时间,与AWS Cloud9相当。作为在Cloud9还是C9.io时使用Cloud9的人,Codespaces提醒了我很多-它是为GitHub项目打开编辑器和虚拟机的简单方法。
代码空间的文档也很棒。我不知道GitHub还可以将点文件直接加载到每个新的Codespace中,因此您的首选项(.bashrc和类似文件)将在Codespace中跟随您。
编辑档案是的,基于Visual Studio Code,代码空间具有暗模式。
默认代码空间编辑器
尽管如果您使用其他浏览器打开工作区(出于以下原因,我必须这样做),但是配色方案首选项不会在所有浏览器中跟随您。我不是Visual Studio Code的普通用户,但是它似乎包含了您期望浏览器提供的所有标准功能,例如语法突出显示,VIm和Emac键盘绑定(在浏览器中很好用)以及启用的自动保存默认情况下,我会立即禁用。
您还可以将文件从本地计算机拖放到Codespaces文件系统中,并在浏览器中预览和编辑某些非文本文件,例如图像,这两个文件对于Web开发都是非常方便的。
终端模拟器Codespaces包含一个功能强大的终端编辑器,该编辑器似乎基于股票Debian图像。我唯一不喜欢的是使用下拉列表而不是使用选项卡访问单独的终端,但这只是次要的细节。
大新闻:Docker在这里,并且运行良好。
代码空间中的Docker
我对C9.io的最大问题之一是缺乏Docker支持,当AWS购买Cloud9时就解决了这一问题,但配置Amazon计算机的复杂性更高。因此,能够在浏览器中简单运行Docker很棒。默认情况下未安装Docker-compose,而且我还没有机会看到它是如何工作的。
我在终端仿真器中发现的唯一问题是,您只能右键单击将其粘贴到基于Chromium的浏览器(例如Chrome或Edge)中,Firefox用户要当心。
服务地点Codepsaces在为您处理端口转发方面做得很出色,因此您可以简单地启动服务器进程(在非Port 80端口上),并且如果GitHub检测到localhost:PORT组合,则可以通过单击URL对其进行访问,如下所示:
代码空间中的Jekyll
加载和重新加载Jekyll的速度非常快,当我单击转发的链接或切换选项卡以预览站点的更改时,它已经刷新了。 但是,这是另一个仅Chromium的功能,可移植的端口前向链接在Firefox中不起作用 Firefox现在似乎已修复此问题。
另一个小问题是,您无法在未登录GitHub的情况下在私有窗口或其他浏览器中打开网站来查看服务器。这不是一个大问题,但是如果您尝试查看您的网站在其他浏览器下的外观,或者在注销时看起来很麻烦。
代码空间中的Aristotle主页
最后的想法这真是太棒了,并且可能成为我的默认IDE-作为共同创始人,他花更少的时间作为开发人员,而将更多的时间用于会议,撰写电子邮件,策略文件,信件和招标书,这真是太神奇了!我的大多数日常工具都是基于Windows的,因此我花了很多时间让Linux的Windows子系统与其余的日常工作流程一起工作,这会给自己带来很多麻烦。因此,能够快速签出分支机构,进行更改并承担一些本地计算机的负载似乎是很有前途的。
这里有许多我没有机会查看的功能,包括协作工作区,Git集成以及与Visual Studio本地版本的连接,但是从一眼便可以看到一切正常。