如何使用 git cherry-pick 跳过不精确的重命名检测

问题描述

我有大约 10 次提交,我需要从一个旧分支到一个大型 repo 的当前分支中挑选。每次我运行cherry-pick命令时,我都会得到以下信息:

$ git cherry-pick -x 11a77a55bf
Performing inexact rename detection:   0% (438032/938483560)

我第一次让它完成,大约需要 10-15 分钟。但它对我选择的每个提交都这样做。有没有办法防止这种情况,至少对于当前命令而言?

我尝试设置 renameLimit 但没有帮助:

git -c diff.renameLimit=1 cherry-pick -x 11a77a55bf
Performing inexact rename detection:   0% (1259342/938483560)

解决方法

git cherry-pick 在幕后使用合并机制,它有自己的与重命名检测相关的配置:merge.renameLimit

git -c merge.renameLimit=1 cherry-pick -x 11a77a55bf

做你想做的事。