Files
gitea-jira-task-bot/how-to-use.md
2026-01-29 15:38:49 +08:00

67 lines
3.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
### 场景一:新建工单自动同步
**Gitea新建工单**:
1. 进入Gitea仓库
2. 点击Issues -> 新建Issue
3. 填写标题、描述、指派人、标签(优先级、类型)、里程碑
4. 点击提交
5. 系统自动在Jira创建对应问题
6. Gitea工单中添加评论包含Jira问题链接
**Jira新建问题**:
1. 进入Jira项目
2. 点击创建按钮
3. 填写摘要、描述、经办人、优先级、问题类型、迭代
4. 点击创建
5. 系统自动在Gitea创建对应工单
6. Jira问题中添加评论包含Gitea工单链接
### 场景二:更新工单字段
**修改优先级**:
1. 在任何一端修改优先级
2. 系统自动更新对方平台的对应标签
3. 对应标签根据mappings.json中的优先级映射进行转换
**修改工单类型**:
1. 在任何一端修改工单类型
2. 系统自动更新对方平台的对应标签
3. 对应标签根据mappings.json中的类型映射进行转换
**修改迭代/里程碑**:
1. 在任何一端修改迭代或里程碑
2. 系统自动更新对方平台
3. 里程碑名称与Sprint ID根据mappings.json进行映射
**更新指派人/经办人**
1. 在任何一端更改指派人
2. 系统自动更新对方平台如果Gitea有多个指派人Jira经办人取第一个
### 场景三:跨平台手动同步
**使用/resync命令**:
1. 在Gitea或Jira工单评论中输入`/resync`
2. 系统会强制重新同步所有字段
3. 如果对方平台不存在对应工单,会自动创建
4. 如果已存在,会更新所有字段
**#不同步标记**:
1. 在工单标题中添加`#不同步`标记
2. 该工单不会自动同步到对方平台
3. 使用`/resync`命令可以强制同步带有`#不同步`标记的工单
### 场景四:类型过滤
**类型未配置的工单不同步**:
1. 如果工单的类型标签在mappings.json中没有配置对应关系
2. 或是Gitea创建工单时没有选择类型标签、Jira创建问题时选的问题类型在Gitea那边没有对应的标签
3. 该工单不会被同步,日志会记录跳过原因
4. 原本就没被同步/被过滤的工单,任何操作都不会触发创建事件,这样设定是为了保护以前的陈旧工单被挖坟的时候不会被重新同步
5. 需要强制同步未同步的工单,请使用`/resync`命令
**手动打标签**
1. 由于Gitea平台的类型标签和Jira问题类型并不是一一对应可能会出现多个类型标签对应同一个Jira问题的情况
2. 这会导致Jira那边创建问题对应了多个标签的时候机器人会不知道该选哪个标签此时会默认选第一个这就会出现Jira那边创建了一个开发任务虽然它是一个需求但是被打上新功能标签的问题
3. 为解决这个问题我为机器人引入了规则允许用户在Jira创建问题的时候在问题上带一个[flag][flag]xxxx这样机器人就会寻址到[类型/flag]标签,举个例子,某个开发任务可以写成“[新功能]我是一个新功能”在Gitea那边就会被正确地打上[类型/新功能]标签
4. 标题flag的优先级会高于设定的类型如果你不小心把类型选到了故障如果标题上有[新功能],还是以标题为准,如果两个都“不小心”写错了(是故意的还是不小心的?),以类型(多对一时是映射表里设定的第一个)为准
5. Gitea那边不会有上述特性因为通常不会出现多个Jira类型对应一个标签的情况不打标签非要写标题上你就是纯坏纯坏