Git合并两个提交并重命名同一个文件

pxy2qtax  于 2023-03-16  发布在  Git
关注(0)|答案(1)|浏览(122)

我想知道如何自动合并(或其他操作,如cherry pick,rebase,...)两个重命名相同文件的提交(无需手动解析)。更准确地说,我有两个提交:

  • A.文本-〉B.文本
  • A.txt -〉文件夹/A. txt

我想自动:

  • A.txt -〉文件夹/B. txt

有可能吗?
我搜索了解决方案,但没有找到自动的,我尝试了合并,变基,樱桃挑选,我尝试了合并策略的参数,但也不起作用。

yqlxgs2m

yqlxgs2m1#

不,不幸的是,* 这不可能自动实现 *。你可以用两种不兼容的方式更改文件名。Git不可能知道该选择哪个文件名(它也绝对不会“编造”一个它从未见过的新文件名)。
您必须手动解决此问题,就像您必须手动解决对同一行的两个更改一样。
为什么?我们来增加“难度”:
1.文件夹/A. txt =〉新文件/B. txt
1.文件夹/A. txt =〉文件夹/旧版本/C. txt
结果会是什么?新建/C.txt?文件夹/新建/B.txt?文件夹/新建/C.txt?文件夹/B.txt?

相关问题