我的一个团队成员正在做一个特性分支。然后他将我们的主分支合并到他的功能分支中,但是显然只接受了他的更改,没有一个来自主的(大的)更改被记录在合并中。
所以提交看起来像:
Commit: 1a168acc1bbabcdc68ad6310e8cf521cc32cc708 [1a168ac]
Parents: cf8f0a4898, 59232d8d24
Check-in comments about minor changes to two small files所以他有效地消除了师父的变化。
然后,向特性分支应用了另几个提交,他发出了一个拉请求(我们使用GitHub,他将分支推到那里)。
现在,当我做一个合并,它当然不会-做所有的重要变化的主人。如果可能的话,我想要做的是纠正合并的中断。或者重做合并。甚至从提交中提取差异,并在早期重新应用它们。
在这种情况下,提交足够小,可以手工重复,但是我想知道如何正确地完成这个任务。
发布于 2014-02-14 21:51:33
我不确定这是最好的解决方案,但在错误的“合并”之前,我将头重新设置为提交。然后,我发现,通过对合并提交进行筛选,并选择特性分支作为主线,我可以在不进行合并跟踪的情况下获得提交:
git cherry-pick 1a168acc -m 1既然这个分支只有一次又一次的提交,我就把那根树枝摘到我的新的分离的头上,创建了一个新的分支,然后把主人合并到新的分支中,没有任何问题。
如果合并后有一系列提交,我不确定正确的解决方案是什么。
https://stackoverflow.com/questions/21786293
复制相似问题