拣选更改

极狐GitLab 实现了 Git 的强大功能,可以在合并请求和提交详细信息中使用 拣选 按钮拣选任何提交

拣选合并请求

合并请求合并后,会显示一个 拣选 按钮来拣选该合并请求引入的更改。

Cherry-pick merge request

单击该按钮后,窗口会显示一个分支过滤搜索框,您可以在其中选择:

  • 直接将更改拣选到选定的分支中。
  • 使用拣选的更改创建新的合并请求。

跟踪拣选

当您拣选合并提交时,系统会在相关的合并请求主题显示系统注释,交叉链接新的提交和现有的合并请求。

Cherry-pick tracking in merge request timeline

每个部署的关联合并请求列表包括拣选的合并提交。

note我们只跟踪从极狐GitLab(UI 和 API)执行的拣选。

拣选提交

您可以从提交详细信息页面中拣选一个提交:

Cherry-pick commit

与拣选合并请求类似,您可以将更改直接拣选到目标分支中,或者创建一个新的合并请求来拣选更改。

当拣选合并提交时,主线始终是第一个父级。如果要使用不同的主线,则需要从命令行执行此操作。

这是一个使用第二个父级作为主线来拣选合并提交的快速示例:

git cherry-pick -m 2 7a39eb0

拣选到项目中

  • 引入到 13.11 版本,使用功能标志,默认禁用。
  • 功能标志移除于 14.0 版本。
caution您可能无法使用此功能。查看上面的版本历史注释以了解详细信息。

您可以使用 GitLab UI 将合并请求拣选到项目中,即使合并请求来自一个派生项目:

  1. 在合并请求的二级菜单中,点击 提交,显示提交详情页面。
  2. 单击 选项 下拉菜单并选择 拣选 以显示拣选窗口。
  3. 选择项目选择分支 中,选择目标项目和分支: Cherry-pick commit
  4. (可选)如果您已准备好创建合并请求,请选择 启动新的合并请求
  5. 点击 拣选