【发布时间】:2019-07-10 18:48:06
【问题描述】:
这与我的另一个问题有关:Can't make a replacement ref "permanent"。需要明确的是,无论出于何种原因,git replace --graft 与 git filter-branch 结合使用都不起作用。
我需要合并三个分支,但是章鱼合并失败(文件太不相似)所以我全部手动完成(git show branch:file > file 然后启动meld)。但是,历史很重要,所以我需要记录 branch 是父母。由于尽管按照 man 文件和 Stackexchange (filter-branch) 上的其他地方告诉我的操作,我仍无法使替换 refs 成为永久性的,因此我寻求替代方法。
从我现有的问题中可以看出,我的第一个想法是使用替换,但这并没有按预期工作(它们没有被“固定”)。同样git graft 似乎被建议不要。此外,如链接问题中所述,章鱼合并失败。翻阅git commit --help(手册页)一无所获。
请注意,我并不是要向旧提交添加额外的父级。我在尚未推送的分支的尖端,并且没有提交将这个作为父级。
【问题讨论】:
-
如果
git replace --graft后跟一个裸过滤器分支不起作用,则说明有问题。您的另一个问题没有显示任何错误,filter-branch 只是注意到您将它指向了许多您不需要的参考。