将相同的文件重命名更改应用于分歧的GIT分支

问题描述 投票:4回答:1

我有一个项目,它有一个主分支和一个稳定的分支 - 很久以前分支机构分道扬..现在我在stable分支上有一些提交,我也希望在master分支上有一个提交(修复bug)。我无法合并,因为分支发散并且存在大量未合并的变化 - 我只想要4次提交。

所以我尝试了樱桃挑选。但是,由于顶级模块名称从“项目模块”方案更改为“模块”,因此失败。在挑选时,GIT在旧目录中创建新文件(如在旧分支上):未检测到重命名。那可能是因为我得到了这个警告:

warning: too many files (created: 278 deleted: 5364), skipping inexact rename detection

我尝试了git format-patch + git am,但是这又在旧目录中创建了文件。

如何将提交应用于主分支?

谢谢,亚当

git patch merge cherry-pick
1个回答
3
投票

我怀疑你可以通过改变merge.renameLimit的值来使它工作(但需要很长时间):

merge.renameLimit

合并期间执行重命名检测时要考虑的文件数;如果未指定,则默认为diff.renameLimit的值。

我相当肯定樱桃挑选也会尊重这个价值。如果没有,您可以找到两个分支的共同祖先,在那里应用提交,然后将它们合并到两个分支中,以确保它使用合并机制。 (请注意,这实际上是我建议首先做的事情。合并非常适合樱桃选择,因为它们不会创建重复的提交,并且它们保留了历史流。)

© www.soinside.com 2019 - 2024. All rights reserved.