logo
1
1
WeChat Login
Wang Tiaoke<wangtiaoke@cqsoftware.com.cn>
Add CQOS Packager plugin market with source-git/dist-git workflow tools

Packager Skills

Packager (打包侠) - 用于维护 source-git 和 dist-git 之间双向同步的插件。

概述

Packager 插件提供了两个核心技能,帮助开发者轻松维护 source-git(上游源码仓库)和 dist-git(发行版打包仓库)之间的同步:

  • gen-patches: 从 source-git 生成补丁并更新 dist-git
  • distgit-to-sourcegit: 从 dist-git 转换为 source-git

使用方式

在 source-git 中使用 gen-patches

当你在上游源码仓库(source-git)中完成开发后,使用 gen-patches 技能将更改同步到 dist-git:

/gen-patches

该技能会:

  • 分析 source-git 中的提交和更改
  • 生成对应的补丁文件
  • 更新 dist-git 中的 SPEC 文件
  • 将补丁应用到 dist-git 仓库

在 dist-git 中使用 distgit-to-sourcegit

当你需要在发行版仓库(dist-git)的基础上创建或更新 source-git 时,使用 distgit-to-sourcegit 技能:

/distgit-to-sourcegit

该技能会:

  • 读取 dist-git 中的 SPEC 文件和 SOURCEINFO.yaml
  • 解析 SOURCES 目录中的源码和补丁
  • 创建或更新对应的 source-git 仓库结构
  • 将发行版补丁应用到上游源码树

工作流程

典型的维护工作流程如下:

source-git (开发) → gen-patches → dist-git (打包) ↓ ↑ distgit-to-sourcegit ←---------------------+
  1. 在 source-git 中进行开发和测试
  2. 使用 gen-patches 将更改同步到 dist-git
  3. 在 dist-git 中构建 RPM 包
  4. 如需回溯或重新同步,使用 distgit-to-sourcegit 更新 source-git

支持的发行版

本插件支持以下发行版风格的 dist-git 仓库:

  • openEuler
  • RHEL (Red Hat Enterprise Linux)
  • Fedora

相关文件

  • plugin.json: 插件配置文件
  • skills/: 技能定义目录
    • gen-patches: 生成补丁技能
    • distgit-to-sourcegit: dist-git 转 source-git 技能