在 GitLab 中,查看 Merge Request(MR)标签的添加和删除历史可以通过以下方法实现:
方法 1:查看 Merge Request 的活动日志
GitLab 会记录 Merge Request 的所有活动,包括标签的添加和删除。可以按照以下步骤查看:
-
打开目标 Merge Request。
-
滑动到 "Activity"(活动) 部分。
-
在活动日志中,查找与标签相关的记录。例如:
- "added [label_name] label"(添加了标签)。
- "removed [label_name] label"(移除了标签)。
GitLab 会详细记录这些标签变更的时间和操作人。
方法 2:使用 GitLab API
如果需要程序化地查看标签历史,GitLab 的 API 提供了查看 MR 活动的能力。
-
获取活动日志
-
使用 GitLab 的 Merge Requests API。
-
请求活动日志的 API:
GET /projects/:id/merge_requests/:merge_request_iid/resource_label_events
-
替换
:id
为项目 ID,:merge_request_iid
为 MR 的 IID。
这将返回该 Merge Request 上的所有标签事件,包括添加和删除的操作。
-
-
示例返回数据:
json[ { "id": 1, "user": { "id": 42, "name": "John Doe", "username": "johndoe" }, "created_at": "2025-01-01T12:00:00.000Z", "resource_type": "MergeRequest", "resource_id": 123, "label": { "id": 5, "name": "bug", "color": "#F0AD4E", "description": "Bug fixes" }, "action": "add" }, { "id": 2, "user": { "id": 43, "name": "Jane Smith", "username": "janesmith" }, "created_at": "2025-01-02T12:00:00.000Z", "resource_type": "MergeRequest", "resource_id": 123, "label": { "id": 5, "name": "bug", "color": "#F0AD4E", "description": "Bug fixes" }, "action": "remove" } ]
action
字段表明是添加(add
)还是移除(remove
)标签。
方法 3:使用 GitLab 的 Webhooks
如果希望实时跟踪标签的变动,可以配置 GitLab 的 Webhooks:
- 在项目设置中,打开 Webhooks。
- 配置触发条件,包括 Merge Request Events。
- 当标签变更时,GitLab 会向指定的 Webhook URL 发送通知。
通过上述方法,可以方便地跟踪 MR 标签的变更历史。如果需要更多帮助,请告诉我!