2.3 KiB
2.3 KiB
ADDED Requirements
Requirement: 用户可以添加源仓库
工具必须允许用户添加 git 仓库作为 skills/commands 的源,并将配置持久化到 ~/.skillmgr/repository.json。
Scenario: 成功添加新仓库
- WHEN 用户执行
skillmgr add <git-url>命令 - THEN 系统克隆仓库到
~/.skillmgr/cache/并将配置写入 repository.json
Scenario: 添加已存在的仓库
- WHEN 用户添加已存在的仓库(同名)
- THEN 系统提示"仓库名称已存在,请先使用
skillmgr remove <name>移除",拒绝添加
Scenario: 指定仓库别名
- WHEN 用户使用
--name参数指定仓库别名 - THEN 系统使用指定的别名作为仓库名称
Scenario: 指定分支
- WHEN 用户使用
--branch参数指定分支 - THEN 系统克隆指定分支而非默认分支
Requirement: 用户可以移除源仓库
工具必须允许用户从配置中移除已添加的源仓库。
Scenario: 成功移除仓库
- WHEN 用户执行
skillmgr remove <name>命令 - THEN 系统从 repository.json 中删除对应配置
Scenario: 移除不存在的仓库
- WHEN 用户尝试移除不存在的仓库名称
- THEN 系统提示仓库不存在,不报错
Requirement: 用户可以列出已配置的源仓库
工具必须提供命令列出所有已添加的源仓库及其信息。
Scenario: 列出所有仓库
- WHEN 用户执行
skillmgr list-repos命令 - THEN 系统显示所有仓库的名称、URL、分支和添加时间
Scenario: 无已配置仓库
- WHEN 用户执行列表命令但 repository.json 为空
- THEN 系统提示"无已配置的源仓库"
Requirement: 用户可以同步源仓库
工具必须提供命令从远程拉取最新代码,更新本地缓存。
Scenario: 同步单个仓库
- WHEN 用户执行
skillmgr sync <name>命令 - THEN 系统对指定仓库执行
git pull
Scenario: 同步所有仓库
- WHEN 用户执行
skillmgr sync不带参数 - THEN 系统对所有已配置仓库执行
git pull
Scenario: Git 操作失败
- WHEN git pull 失败(网络错误、冲突等)
- THEN 系统显示 git 错误信息并继续处理其他仓库