让我们假设我们有一个master
分支。
然后我们创建一个newbranch
git checkout -b newbranch
并向newbranch
提交两个新的提交: commit1和commit2
然后我们切换到master并制作cherry-pick
git checkout master
git cherry-pick hash_of_commit1
查看gitk
,我们可以看到commit1和它精心挑选的版本具有不同的哈希,因此从技术上讲,它们是两个不同的提交。
最后,我们将newbranch
合并到master
中
git merge newbranch
并看到这两个具有不同散列的提交被合并在一起没有问题,尽管它们意味着应该应用两次相同的更改,因此其中一个应该会失败。
git真的会在合并时对提交的内容进行智能分析,并决定更改不应该应用两次,或者这些提交在内部被标记为链接在一起吗?
https://stackoverflow.com/questions/14486122
复制相似问题