所以我在一个分支上做了一些更改时遇到了一个问题,并且意识到我对该分支做了一个无关的更改。Git cherry-pick vs存储,切换和弹出
无关的变化非常小(只有一两行)。所以我做了相关的修改,然后尝试切换到master(我想放置不相关的更改)。分支交换机失败了,因为会有合并冲突,所以我转移到了我通常使用的方法来实现这一点,并通过更改隐藏起来,然后移动到主机。我申请了这个藏匿处,并且遇到了合并冲突!这让我感到惊讶,因为变化非常简单。
看着合并工具中的合并冲突,我看到了我原来的功能分支中的各种代码 - git有自动取消选择这些给我,所以没有真正的危险将它们拖到我的主分支上,但它让我稍微深入地考虑一下存储(和差异)是如何工作的 - 我并不认为简单的差异包含了它的来源!
无论如何,在咨询了一位同事之后,我决定尝试使用git cherry pick来将这些更改转移到master上 - 显然这种工作方式不同。所以我在功能分支上做了一些临时的修改,然后尝试把这些修改放到master上。我有完全相同的合并冲突!
所以我修好了东西,完成了提交。但是我想知道解决我遇到的问题的推荐方法是什么(在不同的分支上提交一些更改)?这不是真正的git存储是为了正确的目的?但是对我的功能分支进行提交(然后不得不删除它)似乎有点沉重。
ELI5的奖励积分藏匿流行和樱桃挑选之间的差异(如果有的话)。
最好提供git命令输出,包括git status,git log -n 2,git checkout等等。 – user3159253