Skip to content
Go back

Git cherry-pick Command

Edit page

git cherry-pick 命令允许你从版本库历史中的任何地方选择一个或多个特定提交,并将它们作为新提交应用到当前分支上。

1. 用法

git cherry-pick <commitHash>...

1.1 Pick 单次提交

如果您的 Git 仓库有两个分支(mainfeature):

a - b - c - d - e  HEAD -> main
     \
       f - g - h  feature

要将 f 提交从特性分支应用到当前分支,请使用:

git cherry-pick f

然后,提交 f 将被重放并作为新提交添加到当前分支中。

a - b - c - d - e - i  HEAD -> main
     \
       f - g - h  feature

i 提交是一次新的提交。提交哈希值与 f 不同,但改动相同。

1.2 Pick 多次提交

要在 git 仓库中应用多个提交,请使用提交列表:

git cherry-pick f g h

Git 仓库会是这样的:

a - b - c - d - e - i - j - k  HEAD -> main
     \
       f - g - h  feature

如果您需要挑选一长串提交,则无需写下每个提交的哈希值。只需使用:

1.3 使用分支名

与使用 <commitHash> 挑选特定提交不同,你可以直接使用 <branch-name> 作为目标,使用分支名就能挑选特定分支的最新提交。

对于前面的例子,只需使用 git cherry-pick feature,它就会将 h 提交应用到当前分支。

1.4 解决冲突

如果 git cherry-pick 命令遇到冲突,需要先解决冲突。

然后将已解决的文件添加到暂存区域,并使用 git cherry-pick --continue 命令继续。


Edit page
Share this post on:

Previous Post
2025 Week 52 周报