Track merge requests of cherry-picked commits when deploying

When a merge request is cherry picked into a branch that we deploy, we do not record this merge request using Deployments::LinkMergeRequestsService. This leads to deployments that don't have all deployed merge requests linked.

We should investigate how much work is needed to track such merge requests, and if scraping merge request data from commit messages is a viable solution to this problem.

Feature demo

Development log

Status

  • backend MR !22209 (merged)
  • Feature demo recorded

Decisions

  • make use of feature flags (track_mr_picking) - #36130 (comment 273286851)
  • do not scrape commit messages - #36130 (comment 273286851)
  • only support API/UI picking - #36130 (comment 273286851)
  • link cherry-pick and MR with a system note (visible on the MR timeline) - #36130 (comment 273286851) screenshot

The next iteration

  • Once we collect a bit of real data, consider detecting cherry-picks from Git command line - #202215
  • define a proper icon for the feature - #202212 (closed)
  • remove track_mr_picking feature flag - #199044 (closed)
Edited Aug 27, 2025 by Dave Smith
Assignee Loading
Time tracking Loading