cherry-pick
cherry-pick是一个 Git 命令,用于将一个或多个特定的提交从一个分支应用到当前分支。这个命令常用于将一个分支上的更改合并到另一个分支,而不需要进行完整的分支合并操作。以下是 cherry-pick 命令的基本用法:
- 基本用法:
git cherry-pick <commit-hash>
其中<commit-hash>
是你想要应用到当前分支的提交的哈希值。
- 连续多个提交:
如果你想连续应用多个提交,可以这样做:
git cherry-pick <commit-hash1> <commit-hash2>
这会将 <commit-hash1>
和 <commit-hash2>
指定的提交应用到当前分支。
- 指定范围:
如果你想要应用一系列连续的提交,可以使用范围指定:
git cherry-pick <commit-hash1>^..<commit-hash2>
这会将从 <commit-hash1>
的父提交到 <commit-hash2>
之间的所有提交应用到当前分支。
- 编辑提交信息:
默认情况下,cherry-pick 会使用原始提交的信息。如果你想要编辑提交信息,可以使用 -e
或 -edit
选项:
git cherry-pick -e <commit-hash>
- 继续操作:
如果在 cherry-pick 过程中出现冲突,Git 会停止操作并让你解决冲突。解决完冲突后,你可以使用以下命令继续操作:
git add <resolved-files>
git cherry-pick --continue
- 撤销操作:
如果在 cherry-pick 过程中你想要撤销这个操作,可以使用:
git cherry-pick --abort
合并多个提交为一个:
如果你想将多个提交合并为一个新提交,可以使用 -squash
选项:
git cherry-pick -squash <commit-hash1> <commit-hash2>
这会将这两个提交合并为一个新提交,并且让你编辑提交信息。
使用 cherry-pick 时,确保你的当前分支是干净的,即没有未提交的更改,或者你已经对这些更改进行了提交。这样可以避免在应用其他分支的更改时出现不必要的冲突。