【导读】Github发布重大功能性更新GitHub Package Registry,为用户提供软件包和代码托管服务。用户终于可以用Github自带工具查找、管理和发布软件包了,新服务更好地实现了包与代码的合一。该服务对开源项目免费,目前已开放公测。
Github发布最新功能性更新GitHub Package Registry,为用户提供软件包和代码托管服务。
GitHub Package Registry是一个软件包托管服务,类似于npmjs.org,rubygems.org和hub.docker.com,用户可以使用该服务托管软件包和代码,并将其作为项目中的依赖项。
GitHub使用存储库中的README文件生成对软件包的描述信息,用户可以对这些信息进行编辑,以更准确反映软件包或安装过程的详细信息。GitHub为每个包版本添加元数据,包括作者,存储库,提交SHA,版本标签和日期的链接等。
先来看一段视频介绍:(咖喱味)
以下是GitHub Package Registry的一些新功能:
安全和合规:只需一次登录即可在相同的安全环境中开发,维护和存储软件包。
私有和公共软件包:您可以私下托管软件包或将其公开。您可以私下托管软件包并与同事或组织共享,或者将它们公开给整个世界。
统一权限管理: GitHub Package Registry继承了存储库的权限,整合了设置和维护功能,并降低了安全风险。
多格式支持:用户可以在一个注册表中托管多个软件包类型。
可查看软件包相关信息:通过查看软件包内容,下载统计信息,版本历史记录等,深入了解软件包。
工作流程集成:通过与GitHub API,GitHub操作和webhooks集成,创建包含代码、CI和部署解决方案的端到端DevOps工作流程。
GitHub Package Registry与GitHub完全集成,用户可以使用与存储库一样的搜索、浏览和管理工具来查找和发布软件包,还可以使用相同的用户和团队权限来一起管理代码和程序包。
GitHub Package Registry提供由GitHub全球CDN支持的快速、可靠的下载,支持常用的软件包管理工具:JavaScript(npm),Java(Maven),Ruby(RubyGems),.NET(NuGet)和Docker镜像等。
目前用户可以试用限制版的GitHub Package Registry。本服务对开源使用永久免费,更多价格细节将很快公布。
实现软件包与代码的合一
在处理一个依赖于软件包的项目时,重要的是要信任、理解软件包的代码,并与构建项目的社区建立联系。在社区内部,可以快速找到已批准使用的内容。 GitHub Package Registry使用GitHub界面,用户可以在任何位置查找公共软件包,也可以在组织或存储库中查找私有软件包。
查看软件包的终端命令
GitHub Package Registry与常见的包管理客户端兼容,因此您可以使用您选择的工具发布包。如果存储库比较复杂,可以发布多个不同类型的包。而且,通过webhooks或GitHub Actions,用户可以完全自定义、发布或事后发布工作流程。
要发布开源包也不在话下。大多数开源项目的代码都在GitHub上,因此用户可以发布软件包的预发行版本,以便在社区内进行测试,然后将特定版本提交至所选择的公共注册中心。
统一的身份和权限管理
过去,如果用户在代码和程序包中使用不同的系统,就必须要对不同的用户身份信息和权限进行维护。现在利用GitHub Package Registry,只要选择一组信息,并使用相同的工具管理访问权限即可。 GitHub上的软件包会沿用与存储库相关的可见性和权限,用户无须跨系统维护单独的软件包注册表和镜像权限。
软件包的信息更准确更充分
GitHub上托管的软件包包括详细信息和下载统计信息,以及整个历史记录,因此用户可以准确了解相关内容,因此可以很容易地找到并使用正确的包作为项目的依赖项,增加项目宣传的可信度。用户可以对自己发布的软件包获取更准确的观点,也可以更准确地了解其他用户和存储库如何使用这些资源。
加入测试版公测
GitHub Package Registry目前仅限于公开测试版。
注册地址:
https://github.com/features/package-registry/signup
参考链接:
https://help.github.com/en/articles/about-github-package-registry
https://github.blog/2019-05-10-introducing-github-package-registry//