我有两个主要的分支
大致上,我做了以下操作:
现在,如果我查看
编辑添加:或者,在像这样的情况下,我应该做什么,其中一个热修复包括
master
和development
。最近,我不得不推送一个热修复,这些提交已经合并到development
中,为此,我从development
中挑选了提交,创建了一个新的热修复分支,添加了另一个修复提交,并将其合并到master
中。我的问题是,如何将新的提交合并到development
中,而不会弄乱git提交历史记录?大致上,我做了以下操作:
git cherry-pick <commit SHA>
git checkout -b hotfix-branch
[make more changes]
git commit -m "Fix issue"
git checkout master
git merge hotfix-branch
现在,如果我查看
master
和development
之间的git diff
,旧的development
提交会显示出来,因为它们是cherrypicked,因此是具有相同更改的不同提交。最好的方法是将其合并回development
并“修复”这些差异是什么?编辑添加:或者,在像这样的情况下,我应该做什么,其中一个热修复包括
development
分支中的提交?
git flow
,但在这种情况下,热修复所需的提交已经在开发中了,因此通过cherrypicking,这些提交显示为重复(不同的提交)。如果我在开发中执行git merge master
,则新的合并提交将显示在主分支的diff上,即使这些更改已经在主分支上。我的意思清楚吗? - deedevelopment
和master
分支之间出现分歧的历史记录。 - dee