有时候我们在本分支做了一个很小的更改提交,其他分支想直接拿到这个更改提交,有没有一种不像merge或rebase这么正式的做法呢?也就是说:我仅仅是想获取其中一个小改变而已。cherry-pick就是这样一个不错的命令。
说一种我认为合适的使用场景:假设我在dev分支开发一个新功能,涉及到不少的修改。突然,产品说把某某页面的样式调一下。我在dev分支上改好了这个样式,但是我的新功能还没开发完。这时候,我就切到master分支,用cherry-pick的方法把dev上那个样式的提交记录给复制过来。master提交之后,再返回dev上继续开发没开发完的新功能。
这样一来,我在dev分支还未开发完的新功能就不会被merge到主线了。