写点什么

刚刚,GitHub 重磅发布四大新功能

2020 年 5 月 07 日

刚刚,GitHub重磅发布四大新功能


今天,GitHub 在线上举办了 Satellite 2020。每年的 Satellite 是 GitHub 年度最大型的国际产品和社区活动,由于受新型冠状病毒肺炎疫情的影响,GitHub 今年将 Satellite 搬到线上。在 Satellite 2020 上,GitHub 一口气发布了四款新品:CodespacesGitHub DiscussionsCode scanning 和 secret scanning 以及 GitHub Private Instances


新品介绍

Codespaces:一个云上的浏览器 IDE

向社区贡献代码一般都很困难,这个难不在于社区对代码的接纳度,而在于社区内的每个不同的项目、库都有自己各异的开发环境配置方法。因此,开发者在向社区贡献代码之前,通常需要经过一打步骤才能真正地开始写有用的代码。更悲剧的是,你时不时还会碰上两个项目之间的配置环境冲突问题。


基于这样的实际痛点,GitHub 在这次的会议上正式发布了 Codespaces,中文译名代码空间。GitHub 的官方介绍里表示:


Codespaces 为你提供了一个全功能、云托管的开发环境,可以在 GitHub 中秒开,这样开发者就可以很方便地为任意一个项目贡献代码。



依托于老大哥微软的 Visual Studio 的技术支持,Codespaces 内置了一个基于浏览器的完整 VS Code 编辑器版本,你可以很方便地在浏览器中实现代码构建、测试、调试和部署。如果你更偏好桌面 IDE,也可以在 GitHub 中启动 Codespaces 以连接桌面版本。


从该产品的命名上我们也能看出一些端倪,GitHub 没有将其命名为 CodeSpaces,而是直接写作了 Codespaces,这或许代表 GitHub 希望开发者将关注的重点放在 Code 上,而不是 Code 与 Spaces 的并列关系。简而言之,Codespaces 希望给开发者一种更好的 Coding 体验,spaces 只是一个位置概念。


目前发布的 Codespaces 版本是 Beta 版,少数 GitHub 用户有内测使用权限,随着时间推移将逐渐扩大给更多用户使用。Beta 版本的 Codespaces 是免费的,正式版上线后,GitHub 预计将使用简单的按需付费的计费方式。


GitHub Discussions

在 GitHub 看来,社区开发人员不仅仅一起写代码,他们还需要对话交流,集思广益,并以最佳的方式协作。一直以来,GitHub 仅仅提供 issues 和 PR 作为开发人员对话的地方,但是它们各有不足,比如 issues 一般仅用来反馈 bug,提出新特性。


GitHub 表示,“开发者间的交流和对话需要有专属场所,Discussions 正是为此而生。”



据悉,Disscussions 存在于开发人员的项目存储库中。它表现为线程形式,开发者可以很方便地提出问题、回复问题,并组织非结构化的对话。问题可以被标记为已回答,因此随着时间发展,社区的知识基础会不断壮大。并且,开发人员之间的讨论不会以 issues 的形式结束,因此它可以作为维护常见问题解答和其他协作文档的地方。


Code scanning 和 secret scanning

近年来,GitHub 不断致力于提高平台的安全能力。2019 年,GitHub 收购代码分析平台公司 Semmle,致力于查找零日漏洞及其变种。为进一步提高安全性,GitHub 如今推出 Code scanning 和 secret scanning。


开发者启用 Code scanning 后,将对每个“git push”进行扫描来查找新的潜在的安全漏洞,并且结果直接显示在你的 PR 里。根据 GitHub 介绍,Code scanning 使用了世界上最先进的语义分析引擎——CodeQL,后者在排查漏洞方面具有无可匹敌的优势。



Secret scanning 前身叫 token scanning,从 2018 年起,公共存储库可以使用该功能。现在,该功能对私有存储库开放。据 GitHub 介绍,它们和包括 AWS、Azure、谷歌云、npm、Stripe 和 Twilio 在内的合作伙伴一起,致力于扩大覆盖范围。


现在,Secret scanning 还能监视私有存储库中的已知 secret 格式,并在发现它们时立即通知开发人员。目前,GitHub 为所有公共存储库免费提供 Code scanning 和 Secret scanning 功能。


GitHub Private Instances

据 GitHub 介绍,GitHub Private Instances 是一项针对企业用户全新、全托管的选项。Private Instances 提供增强的安全性、合规性和(安全)策略功能,包括 BYOK 加密、备份归档以及对区域数据主权要求的合规性。(该功能目前还未提供 Beta 版。)


砸钱的微软,进击的 GitHub

2018 年 6 月 4 日,微软以 75 亿美元的报价收购了 GitHub,当时的技术圈反馈用“如丧考妣”形容甚至都不为过。彼时的 GitHub 有近 3000 万开发者,托管近 9000 万个开源项目库。不过却一直没有盈利,仅 2016 年前三季度就亏损 6600 万美元。


鲍尔默时代的微软,视开源为洪水猛兽。纳德拉时代的微软,却待开源为蜜糖。



用纳德拉的话讲,微软 +GitHub= 赋能开发者。


有了微软财力支撑的 GitHub 在发展道路上越发没有负担,这两年间不断推出了普惠开发者的各类新功能:


  • GitHub Actions:内置 CI/CD,对所有开源项目免费使用;

  • GitHub Sponsors:用户可以用每月付费的方式赞助开源项目;

  • GitHub Free:无限私有仓库免费使用;

  • GitHub Mobile:移动版 GitHub App 正式上线;

  • GitHub Archive Program:保存代码至少一千年;

  • 集成 npm:支持世界上最大的开发人员生态系统;

  • ……


GitHub 在开源世界攻城拔寨,对微软有何意义?


我们可能需要厘清一个概念,这个世界上或许并不存在纯粹的技术驱动型公司。纳德拉时代的微软,战略目标是以云为先,以 AI 为先。收购 GitHub 首先是符合微软的战略意图,GitHub+Azure,带给开发者的是一套完整的工具链,从代码托管、开源协作到环境部署一应俱全。


从这个角度出发看,微软从收购 GitHub 再到收购 npm,都是为了其战略意图先行。有人或许会担心,微软现在砸钱把用户都聚拢了,后面是不是就要开始割韭菜了?这个问题可能略显狭隘,对微软而言,一个开放的生态、良性的社区才是最符合它的利益的。


开源与商业的冲突问题,这么多年的发展过后已经形成了一个公理,单纯的开源真的不赚钱。保持独立运营的前提是,开源项目或企业有足够的资金支持,当马斯洛需求理论的面包还没满足时,又如何去追求开源的美好与意义?


所以,微软收购后的 GitHub,真香!


2020 年 5 月 07 日 15:019351
用户头像
万佳 InfoQ编辑

发布了 619 篇内容, 共 234.8 次阅读, 收获喜欢 1579 次。

关注

评论 2 条评论

发布
用户头像
Mark
2020 年 05 月 14 日 12:55
回复
用户头像
“Codespaces in GitHub include a browser-based version of the full VS Code editor” Is VS Code Not VS
2020 年 05 月 07 日 16:23
回复
没有更多了
发现更多内容

波卡的Wasm和以太坊2.0的eWasm相对于EVM虚拟机的绝对优势

Patract

智能合约

28次面试从未被拒,只因学了阿里P8大牛写的这份《Java技术成长笔记》

Java架构之路

Java 程序员 架构 面试 编程语言

Java面试题全部196题合集:涵盖大厂必考的9大技术点

钟奕礼

Java 编程 程序员 架构 面试

【业务架构训练营】模块一作业

汪大侠

别再面向 for 循环编程了,Spring 自带的观察者模式就很香!

Java架构师迁哥

Substrate 合约书之合约综述

Patract

智能合约

Java多线程与并发系列从0到1全部合集!拿走不送~

钟奕礼

Java 编程 程序员 架构 面试

线程池 图解

线程池

肝了一个月,终于完成了24万字的Java面试手册!

码农之家

Java 编程 程序员 互联网 面试

全网疯传!对标阿里P5-P9的知识体系学习路线及阿里内部Java核心知识手册。

Java架构之路

Java 程序员 架构 面试 编程语言

架构实战营 模块一:课后作业

Ahu

架构实战营

带你全面认识CMMI V2.0(五)——改进

渠成CMMI

项目管理 管理 软件 CMMI

YouTube视频转MP3音频 (批量、高效、快捷)

科技猫

分享 教程 视频处理 youtube youtube转mp3

1TB每日仅需6元!USnap磁盘快照服务全新上线,精确到秒级恢复

UCloud技术

快照 备份

程序员从月薪6k到15k,你知道这3个月我是怎么过来的吗?

Crud的程序员

Java 编程 架构 面试 Java工程师

架构实战营模块1作业

林子钧

作业 架构实战营 模块一

架构实战营模块1学习总结

林子钧

学习 架构实战营 模块一

MemVerge使得大内存应用在 Ice Lake CPU上如虎添翼

Steven Xu

redis 内存 高性能 持久化存储 kvm

MemVerge 和百奥智汇用大内存技术加速癌症和新冠病毒的研究

Steven Xu

内存 高性能 持久化存储 I/O

ElasticSearch架构及核心概念

五分钟学大数据

ES 4月日更

架构实战营-模块1-微信业务架构&学生管理系统方案

Lane

模块一:课后作业

冷酷小绵羊

在小公司“混”了两年,我只认真做了五件事,如今顺利拿到天猫Offer,迈上人生的新台阶!

Java架构追梦

Java 面试 天猫Offer 成长路线图

Android高级工程师进阶学习,架构师必备技能

欢喜学安卓

android 程序员 面试 移动开发

4月17日,HarmonyOS开发者日将于上海启幕

Geek_283163

华为

架构实战

颜培攀

架构实战营

这份阿里21年最新版Java面试手册简直无敌了,已经助我拿下五个大厂offer!

Java架构之路

Java 程序员 架构 面试 编程语言

阿里疯传“SpringCloud Alibaba”学习笔记

程序员改bug

Java spring 编程 程序员 SpringCloud

2021最新拼多多Java面试题(现场五面),全面涵盖Java高级到高并发

钟奕礼

Java 编程 程序员 架构 面试

Java-GC概述

GC GC算法

常垒资本石矛:寻找ToB投资中的「非共识」

ToB行业头条

SaaS tob

刚刚,GitHub重磅发布四大新功能-InfoQ