git 命令 cherry-pick

225 阅读1分钟

在开发项目时,很多时候都会遇上这种情况。将当前开发的需求进行拆分上线,或者线上发现严重问题需要临时发版(好不容易发版那就顺便把其余的也一块包含进去吧),手动进行操作呢比较麻烦且容易出现问题。那有没有好的既方便又省力的方式呢?答案是有的 ——— git cherry-pick

基本用法

只迁移一个 commit 可以使用下面的方式,会在当前分支生成一个新的 commitHash

git cherry-pick <commitHash>

如果要迁移的 commit 在分支的最后也可以这样

git cherry-pick branch

同时迁移多个 commit

git cherry-pick <commitHash> <commitHash>

迁移连续的一段 commit

git cherry-pick <commitHash>..<commitHash>

使用 .. 就可以,这个符号是左开右闭的,不包含左边的 commit,并且左边的 commit 必须要早于右边的 commit,想要全闭合的使用下面这种方式

git cherry-pick <commitHash>^..<commitHash>