基于 Github 平台的 .NET 开源项目模板 - PR 相关

本篇将介绍开源模板的 PR 相关功能配置

赘述 project.yml 使用周期

  • 文件来源: 运行跟目录下的 scanner.bat/sh 生成的.

  • 文件位置: .github\project.yml

  • 如何生效:

    • 1.更改 project.yml 中的节点配置.
    • 2.重新运行 scanner.bat/sh 使其生效.

PR 管道功能

开源模板默认的开发流程是, 从主分支创建 dev 分支的, 模板默认在 dev** 分支接收到 PR 时触发管道, 您需要基于主分支手动创建 dev.vnext / dev.next / dev.other 等前缀为 dev. 的分支, 再从 dev.* 分支创建其他功能分支.

建议在所有管道配置完成之后再创建.

1. PR 标记

scanner.bat/sh 将会扫描 .NET 解决方案, 并追加项目节点到 project.yml 中, 其中配置里的全局节点 global_labels 如果赋值, 项目将在PR是打上全局的 Label. 如果某个项目
有定制化的需求, 比如项目 A 除了全局Label 外还想加上自己的 Label, 那么可以在它的 labels 节点后继续追加 label 内容.

请注意 Action 节点, Action 节点无法根据解决方案扫描生成, 您可以手动向 project.yml 添加节点,它不依赖解决方案, 它也并不会"失忆", sacnner.bat/sh 对 Action 节点格外宽松.

2. PR 单元测试

您会发现 test 根节点下面的实体有额外的属性, 比如 trigger_pull_request_test, 该属性为 true 时, 脚本重新运行将会把该项目追加到单元测试管道中, 以便于在 PR 创建时运行它.
这里请注意, 单元测试或许会有一些兼容性等问题, 那么您可能需要学会修订单元测试模板, 它的位置在: .github\NMS_TEMPLATE\test.yml.template, 如下图所示:

这个模板定义了 3种环境, 及4个.NET 版本的模板, 也许并不会覆盖您的测试环境, 请酌情修改它, 并配合 project.yml 重新生成单元测试配置文件.

3. PR 推荐

PR 推荐与 ISSUE 推荐类似, 但它不在 project.yml 的配置范围, 它的配置文件位置在 .github\workflows\pr_recommend.yml. 它可配置的参数为:

  • ISSUE_STATUS: OPEN

    • ALL, 推荐源将从 关闭和打开状态的 issue 中寻找相似的推荐.
    • OPEN, 推荐源将从 打开状态的 issue 中寻找相似的推荐.
    • CLOSED, 推荐源将从 已关闭的 issue 中寻找相似的推荐.
  • USE_PADDLE: "TRUE" 使用 Paddle 模式进行更准确的分词.

  • PICK_COUNT: 1 仅推荐1条相似的 issue

  • MIN_SIMILAR_SCORE: 0.80 相似度最小是80%

  • MAX_SIMILAR_SCORE: 1 相似度最大是100%

4. PR 归档

当 PR 成功合并后,会触发 PR 归档. PR 归档属于全自动流程, 无需配置. 文件位置 .github\workflows\pr_archive.yml

学习与使用

1. 将项目 fork 到你的仓库中, 然后 Setting 作为模板.

2. 文章导航

posted @ 2023-04-26 14:58  AzulX  阅读(74)  评论(0编辑  收藏  举报