打通 TAPD:让需求知道代码走到哪了
代码平台和项目管理工具分开,最典型的内耗是:需求在 TAPD,代码在 CNB,中间靠人手动同步状态。
CNB 和 TAPD 的集成把这条线接上了:提交、分支、合并请求都能挂到工作项上, 工作项页里能直接看到代码进展。
一、配置分两步,不是一个开关
第 1 步:公司管理员去 TAPD 的 公司管理 → 服务集成,关联「云原生构建」。
第 2 步:项目管理员去 项目设置 → DevOps 配置,启用「云原生构建源码」应用。
第 2 步里还要做两件事:
- 完成授权:支持手机号授权和 CNB 授权码授权两种
- 点「关联」把具体仓库挂到项目上(这一步需要管理员权限)
:::tip 卡住了先看权限 「关联」按钮点不动,基本都是当前账号不是项目管理员。 两步配置分属公司级和项目级权限,一个人往往只占一边。 :::
二、提交关键字:把 commit 挂到工作项上
在 TAPD 需求/缺陷/任务页右上角,有一个「复制源码提交关键字」的入口。 把它粘进 commit message:
git commit -m "feat: 支持批量导出 --story=1234567"
效果是双向的:
- TAPD 工作项的「CNB 关联」页签出现这条提交
- CNB 的提交/PR 页面显示关联的工作项
关键字要完整保留,别手打——格式错一个字就断链。
三、分支和合并请求
在 TAPD 工作项的「CNB 关联」页签里,可以:
- 创建分支:直接起一个关联该工作项的分支,点进去跳 CNB
- 关联已有分支:把已经存在的分支挂上来
- 查看这个分支下所有关联的提交和 MR
合并请求两个方向都能发起:TAPD 里发,或者 CNB 里发。合并完成后,工作项的关联页签会展示 MR 信息,CNB 的 MR 详情页展示对应工作项。
四、流水线里也能写回 TAPD
这是比手工关联更狠的一层:用内置任务让构建结果自动回到工作项上。
main:
push:
- stages:
- name: build
script: yarn build
- name: 通知 TAPD
type: tapd:comment
options:
workspace_id: 1234567
# 关联项信息由提交关键字自动解析
两个内置任务分工明确:
| 任务 | 作用 | 典型场景 |
|---|---|---|
tapd:comment | 给关联的 story/task/bug 提评论 | 推送代码后在关联项上留言构建结果 |
tapd:status-update | 更新关联项状态 | PR 合并后自动置为「已完成」 |
tapd:status-update 配在 pull_request.mergeable 之后最自然:代码进了主干,需求状态自己走。
五、值不值得配
三类团队适合:
- 需求、开发、测试三种角色分离,状态流转靠人工同步
- 有合规要求,要能追溯「这个需求是哪次提交、哪次构建上线的」
- 管理者只在 TAPD 里看进度,不登代码平台
一个人写的小项目就不用折腾了——Issue 里写清楚就够。
六、常见问题
Q:提交了关键字,TAPD 没反应? 先看仓库有没有在项目里「关联」上。没关联仓库,关键字就是纯文本。
Q:关联上了但看不到构建信息?
构建信息由流水线任务回写,不是平台自动推。要看到构建结果,得配 tapd:comment。
Q:能在 CNB 里创建 TAPD 工作项吗? 集成方向是「代码 → 工作项」,反向建单不在这套集成里,用 TAPD 的 API。
下一篇回到代码本身:安全扫描。它默认是开着的,很多人不知道自己被扫了什么。