SuperAPI AI 工具集

unopim-git

编程与开发

查看项目

更新于 10-16 02:29

技能介绍

用途:规范在 UnoPim 仓库中的分支创建、提交信息编写与 Pull Request 提交。权威依据为 UnoPim 检出目录($UNOPIM)中的 .github/CONTRIBUTING.md 和 .github/PULL_REQUEST_TEMPLATE.md,若与本技能冲突以仓库文件为准。

分支:默认目标为 master,除非维护者要求回迁到版本分支(如 2.1)。每个分支只修一个问题,按 issue ID 命名,如 issue-1234;小写加连字符。无 issue 时按意图加前缀:feature/short-description、refactor/short-description、test/short-description。

提交信息:强制使用 Conventional Commits,主题末尾用括号引用 issue:type(scope): imperative description (#1234)。type 可用 feat、fix、refactor、perf、test、ci、chore、docs;scope 为涉及的包或区域,如 admin、product、attribute、datagrid、core;主题用祈使语气、小写、无句末句号、不超过 72 字符;可选正文空行后说明原因。禁止旧式格式(如 Fixed #1234 - ...)、仅描述文件名、缺少 scope 或含义模糊的写法。

Pull Request:标题与提交同样使用 type(scope): description 形式;关闭关键字(Fixes #123)放在正文 Issue Reference 段,不放标题。正文必须按顺序包含模板的六个小节:Issue Reference、Description、How To Test This?、Screenshots、Checklist、Documentation,不得省略或改名。可用 gh pr create 提交。UI 变更需将 Screenshots 占位替换为前后对比图或录屏,否则保留标题并写 N/A。文档受影响时勾选 Documentation 并说明需改内容;Checklist 各项须实际运行对应命令后再勾选。

CI 门禁:每次推送与 PR 有六个门禁,均应视为阻塞项:vendor/bin/pint --test;在 MySQL 与 PostgreSQL 上跑 Pest(composer test);Playwright E2E(cd tests/e2e-pw && npx playwright test);Larastan(composer phpstan,禁止添加 ignoreErrors);Rector(composer rector-dry,禁止扩展 withSkip);php artisan unopim:translations:check(覆盖全部 33 种语言)。推送前须先用 unopim-verify 技能在本地按顺序运行相同门禁。

贡献流程:安全漏洞不得开公开 issue,遵循 SECURITY.md;修 bug 先搜索已有 issue,再 fork、按 issue 建分支、向 master 提 PR;新功能先开 feature request issue 再实现。