我已在分支“模板更改”上编写了一些代码,并在很久以前(2个月)将其与 master 合并。
现在,由于有人从主中删除了代码,因此主分支上所做的更改已丢失。
我试图再次合并分支,但是git给了我错误:
“分支已与主人合并”
我还尝试逐一提交 cherry-pick ,但这也没有用; cherry-pick 选择空提交。
现在,我创建了一个新分支并再次对该分支进行了更改,并将它们推送到主分支。
我想知道解决此类问题的最佳解决方案是什么?
答案 0 :(得分:0)
您可以将旧提交中的文件签出为新名称,然后相应地合并更改。首先,您需要识别被覆盖的文件。然后标识要从中获取文件的提交。
通过在 template-change 分支中执行git log -1
,您将获得要从中获取文件的提交。
现在,对于每个被覆盖的文件,在主分支中,您需要通过以下方式将文件签出为新名称:
git show <commit>:file_path > new_name
您现在可以使用任何合并工具合并文件。