89 lines
2.7 KiB
Markdown
89 lines
2.7 KiB
Markdown
|
|
---
|
|||
|
|
name: pms-development
|
|||
|
|
description: PMS待办开发工具。用于开发PMS系统中的待办任务。当用户提到开发PMS待办、开发待办时使用此技能。需要根据待办详情进行代码开发,包括仓库克隆、分支创建、需求开发、代码检查和分支推送。
|
|||
|
|
version: 1.0.0
|
|||
|
|
license: Apache-2.0
|
|||
|
|
metadata:
|
|||
|
|
author: lirh
|
|||
|
|
category: development
|
|||
|
|
tags:
|
|||
|
|
- pms
|
|||
|
|
- development
|
|||
|
|
- enterprise
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# PMS待办开发
|
|||
|
|
|
|||
|
|
## 触发条件
|
|||
|
|
|
|||
|
|
用户要求开发PMS待办时使用此技能。
|
|||
|
|
|
|||
|
|
## 步骤一:获取需求
|
|||
|
|
|
|||
|
|
### 情况A:用户已提供详细需求
|
|||
|
|
直接进入步骤二。
|
|||
|
|
|
|||
|
|
### 情况B:用户只提供PMS待办编号
|
|||
|
|
1. 调用 chinaweal-pms skill 查询待办详情
|
|||
|
|
2. 从待办详情中提取需求描述、技术要求等信息
|
|||
|
|
|
|||
|
|
## 步骤二:仓库准备
|
|||
|
|
|
|||
|
|
### 2.1 确定仓库
|
|||
|
|
1. 分析需求/待办详情,判断属于哪个仓库
|
|||
|
|
2. 如无法判断,使用 gitea-api skill 查询仓库清单
|
|||
|
|
3. 从仓库清单中找到匹配的仓库
|
|||
|
|
|
|||
|
|
### 2.2 克隆仓库
|
|||
|
|
1. 选择合适的本地路径存放仓库
|
|||
|
|
2. 如果父目录不存在,创建父目录
|
|||
|
|
3. 克隆命令:`git clone <仓库地址> <本地路径>`
|
|||
|
|
|
|||
|
|
### 2.3 检查仓库状态
|
|||
|
|
- 如果仓库为空,删除目录后重新克隆
|
|||
|
|
|
|||
|
|
## 步骤三:分支创建
|
|||
|
|
|
|||
|
|
1. 切换到仓库目录
|
|||
|
|
2. 拉取远端主分支最新代码
|
|||
|
|
3. 创建新分支:
|
|||
|
|
- 如果是开发PMS待办,分支名 = 待办编号
|
|||
|
|
- 否则分支名 = 当前日期时间(格式:yyyyMMddHHmm)
|
|||
|
|
4. 切换到新分支
|
|||
|
|
|
|||
|
|
## 步骤四:需求开发
|
|||
|
|
|
|||
|
|
### 4.1 创建开发文档
|
|||
|
|
|
|||
|
|
在项目根目录创建 `devdoc/` 目录,然后创建(文件名前缀为当前分支名称):
|
|||
|
|
|
|||
|
|
**{分支名}_需求清单.md** - 列出需要开发的功能点
|
|||
|
|
|
|||
|
|
**{分支名}_开发思路与改动.md** - 记录每个需求的开发思路和具体代码改动
|
|||
|
|
|
|||
|
|
**{分支名}_失败报告.md** - 记录开发失败的原因和尝试次数
|
|||
|
|
|
|||
|
|
### 4.2 进行开发
|
|||
|
|
在新建分支中进行代码开发。
|
|||
|
|
|
|||
|
|
### 4.3 代码检查
|
|||
|
|
开发完成后:
|
|||
|
|
1. 检查语法错误
|
|||
|
|
2. 尝试编译项目
|
|||
|
|
3. 如有错误,尝试修复
|
|||
|
|
4. 同一问题修复3次仍失败,记录到 `devdoc/{分支名}_失败报告.md`,终止开发
|
|||
|
|
|
|||
|
|
## 步骤五:推送分支
|
|||
|
|
|
|||
|
|
1. 检查远端仓库是否存在当前分支
|
|||
|
|
2. 如果远端分支已存在,报告用户无法推送
|
|||
|
|
3. 如果远端分支不存在,强制推送分支到远端
|
|||
|
|
|
|||
|
|
## 关键约束
|
|||
|
|
|
|||
|
|
- **默认只开发后端接口**:如果没有明确指定仓库,或者没有明确指定需要开发前端,则默认只开发后端接口
|
|||
|
|
- 所有操作在workspace中进行
|
|||
|
|
- 开发文档必须保存到 `devdoc/` 目录,文件名以分支名为前缀
|
|||
|
|
- 编译失败超过3次必须终止并报告
|
|||
|
|
- 推送前必须检查远端分支是否存在
|