合并我的分支中只有一个提交包含的更改? [复制]
Posted
技术标签:
【中文标题】合并我的分支中只有一个提交包含的更改? [复制]【英文标题】:Merging the changes included by only one commit in my branch? [duplicate] 【发布时间】:2018-05-29 14:20:15 【问题描述】:我曾经和一个合作伙伴一起工作,我们每个人都在一个平行的分支中工作。
有时,我想合并他已提交的一些更改,但我不想合并他分支中的所有提交。
如果我合并他的分支,我将合并他的分支和所有这些祖先所指出的提交。这不是我想要的。
如果我合并一个特定的提交,我将合并该提交和所有这些祖先。这不是我想要的。
如何在不合并其祖先的情况下合并分支中仅一个提交所包含的更改?
解释:我的伙伴在他们的文件中工作,我在我的文件中工作。但有时,我们中的一个人更改了一个对双方都通用的文件,因此我们只需要合并在 commom 文件中所做的更改。
【问题讨论】:
【参考方案1】:cherry-pick
在这种情况下确实是您想要的。它允许您指定一个提交哈希以应用于您当前的分支:
git cherry-pick <commit>
在将分支与精选提交合并时,git 应该能够快进这些提交,确保您不会出现重复提交。
此流程的一个问题是,如果在精心挑选的提交中发现了问题。需要将更改应用于您的两个分支。
我的建议不是挑选提交,而是将这些提交合并到您的主分支中。这让你们双方都更容易保持最新状态。
【讨论】:
【参考方案2】:我认为樱桃采摘是您正在寻找的:
git cherry-pick <commit>
检查这个:https://***.com/a/9339460/3790546
【讨论】:
以上是关于合并我的分支中只有一个提交包含的更改? [复制]的主要内容,如果未能解决你的问题,请参考以下文章