本页描述 CentOS Stream 及 source-git 的方案。
packit 计划的文档已详尽地介绍了 source-git 的科技:https://packit.dev/docs/source-git/
请留意很多部件仍在研究及开发中:此页将会不断地更新。假若你有任何问题,请联络 packit 小组:https://packit.dev/#contact
最后更新:2021 年 1 月
CentOS Stream 8
活动 CentOS Stream 版本的 source-git 存储库已收录于 CentOS Pagure 的暂存实例中:https://git.stg.centos.org/projects/source-git/%2A。待 CentOS GitLab 公开后,我们将会把这些源码库迁往 GitLab。
以下的描述适用于 source-git 存储库:
- 每个存储库包含特定组件的未加压源码,方便你通过 pagure 的网页界面浏览。
- 存储库是从对应 dist-git 的部份创建而成。
- 解压后的上游发行档对应单一 commit。
- 下游所包装的文件分布于多个 commit。
- 最顶的 commit 包含下游的修正,每个修正对应一个 commit 连同附属的中继数据(例如:修正文件名称)
- dist-git 内对组件的改动很有可能阻碍转换程序的运作。要是出现这情况,该存储库将不会获更新,直至问题解决为止。
- 此外还有简化版的 source-git 存储库:「单一 commit」的 source-git 内包含所有已解压的源码及下游的修正档 —— 那些不支持标准转换程序的存储库以此形式出现。
- 存储库拥有两个独立分支:
- c8 —— 跟踪 CentOS Linux 8
- c8s —— 针对 CentOS Stream 8
- 这些软件库随著 dist-gist 存储库被改动而不断更新。更新也许不会即时发生。
- 你可通过打开合并请求(merge request)来作出贡献。
- 合并请求本身是不会获合并的 —— 一但某合并请求获接纳后,一个包含修正档的相关 Bugzilla 错误报告将会获创建,然后它会根据 Red Hat 的内部程序纳入 RHEL 8 内。
- 合并请求是由持续整合所核对的 —— 例如:开始创建 RPM 之时。
CentOS Stream 9
CentOS Stream 9 的存储库将会有所改善,最显注的是包含上游的 git 历史。
CentOS Stream 9 的存储库是未来的方向,以下是它们的特性:
- 每个存储库包含特定组件的未加压源码,方便你通过 pagure 的网页界面浏览。
- 每个存储库包含上游的 git 历史,而 git 标签对应个别发行版本。你可以在 git 历史的顶端找到下游的内容,这与经 dist-git 转换后的存储库相若。
- 你可以打开合并请,而它们会被直接合并到存储库内。
- 创建发行版本时,dist-git 会利用 packit 的自动化程序从 source-git 取得改动,然后运用标准的 fedpkg/centpkg 工具创建组件。
测试可加进持续整合的程序内执行。
Translation of revision 3