由于受新型冠状病毒肺炎疫情的影响,GitHub 今年将 Satellite 搬到线上。在 Satellite 2020 上,GitHub 发布了四款新品: Codespaces 、 GitHub Discussions 、 Code scanning 和 secret scanning 以及 GitHub Private Instances 。
- Codespaces: 完整的开发环境,可让您立即动手开发.
- GitHub Discussions: 一种在代码库之外进行协作的新方法.
- Code scanning and secret scanning: 帮助社区生成和使用更安全的代码.
- GitHub Private Instances: 对于严格监管的客户也可以进行协作.
Codespaces
向社区贡献代码一般都很困难,这个难不在于社区对代码的接纳度,而在于社区内的每个不同的项目、库都有自己各异的开发环境配置方法。因此,开发者在向社区贡献代码之前,通常需要经过一打步骤才能真正地开始写有用的代码。更悲剧的是,你时不时还会碰上两个项目之间的配置环境冲突问题。
基于这样的实际痛点,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 版。)
相关文章
使用git commit --fixup修改之前的提交
使用git commit --amend可以简单的修改前一条记录,但是不能修改前面第 N 次提交记录,这个时候使用git commit --fixup可以修改前面的提交第 N 次记录。
gitHub增加Dependabot自动化安全PR
GitHub 宣布增加一些新的特性,旨在帮助开发者保护其代码,包括能够针对需要为包含安全补丁而更新的依赖创建 PR,支持与 WhiteSource 数据集成,以增强漏洞评估和增进对依赖关系的理解。
how to delete git commit
Deleting the .git folder may cause problems in your git...