我有两个分支,master
和feature
。Master偶尔会接收到需要快速上线的小调整。完成这些调整后,将master
重新基于feature
,以使feature保持最新状态。
master
上更改的文件通常与feature
上的大部分开发无关,但我一直遇到复杂的三路合并冲突。
在查看了feature
的提交记录后,我发现问题出在几个重复的提交上,并尝试使用交互式变基解决它。
我的问题是:
这是问题的最佳解决方案吗?如果是,我可以删除重复项并基本上按照我的预期构建历史记录吗?还是应该删除较高(旧原始)或较低(新副本)的重复项?
从 git rebase master -i
获取的摘要列表:
pick 0eb277c Commit A
pick ced2556 Commit B
pick 640e049 Commit C
pick b248ff7 Commit D
pick 9903094 Commit E
pick ebc279d Commit A
pick 313385b Commit F
pick 0d55178 Commit G
pick c8f09f9 Commit H
pick e877be3 Commit I
pick 9859aa0 Commit J
pick c3c8e0f Commit K
pick 8abc68c Commit L
pick 84a5c89 Commit A
pick 30570e4 Commit B
pick 937ff2f Commit C
pick 8e6d911 Commit D
pick 1dd3a09 Commit E
pick fe79288 Commit F
pick 9e790bb Commit G
pick 0924916 Commit H
pick 90d59d7 Commit I
pick ba06c55 Commit J
pick 7452fad Commit K ** Dupes end here** and features then has 30+ more commits.
pick d1dca3d Commit M
pick 6c85f76 Commit N
pick ad53b78 Commit O
pick f166471 Commit P
git rebase -i HEAD~x
命令,将x
替换为你想要从上到下查看的提交数量,例如git rebase -i HEAD~3
将会显示最近的三个提交。然后你可以选择保留哪些提交,删除哪些提交。 - e.doroskevic