git 操作之合并其它分支的某次提交(commits)到当前分支

简介: git cherry-pick合并其它分支的某次提交(commits)到当前分支

git cherry-pick 可以选择某一个分支中的一个或几个commit(s)来进行操作。

例如,假设我们有个稳定版本的分支,叫v2.0.0,另外还有个开发版本的分支v3.0.0,我们不能直接把两个分支合并,这样会导致稳定版本混乱,但是又想增加一个v3.0.0中的功能到v2.0.0中,这里就可以使用cherry-pick了,其实也就是对已经存在的commit 进行再次提交。

合并操作

git checkout v2.0.0 #切换到目标分支
git cherry-pick ff571ed7 #ff571ed7 是v3.0.0分支的某次commit的hash(可以使用git log查看)
# 一次合并多个commit
git cherry-pick ff571ed7 ff571ed8
# 如果多次commit是连续的
git cherry-pick ff571ed7..ff571ed8 # 不包括ff571ed7
git cherry-pick ff571ed7^..ff571ed8 # 包括ff571ed7

成功的提示

1078209-20230224111856417-408378816.png

注意事项

如果有冲突发生,要先解决冲突,然后再运行git cherry-pick --continue就可以继续完成;

其它操作

#1、发生冲突后放弃合并,回到操作之前的状态
git cherry-pick --abort

#2、发生冲突后,退出cherry-pick 但不回到操作之前的状态
git cherry-pick --quit
相关文章
|
20天前
|
项目管理 开发工具 git
Git项目管理——分支(三)
Git项目管理——分支(三)
20 2
|
15天前
|
开发工具 git 开发者
【git merge/rebase】详解合并代码、解决冲突
【git merge/rebase】详解合并代码、解决冲突
38 0
|
1月前
|
JSON 开发工具 git
git rebase 合并当前分支的多个commit记录
git rebase 合并当前分支的多个commit记录
|
21天前
|
开发工具 git
idea的git reset current branch to here操作详解
idea的git reset current branch to here操作详解
21 1
|
21天前
|
开发工具 git
git切换到另一分支更改也会随之过去
git切换到另一分支更改也会随之过去
20 1
|
21天前
|
开发工具 git
git将一个远程分支的部分修改提交到另一个远程分支
git将一个远程分支的部分修改提交到另一个远程分支
12 1
|
15天前
|
敏捷开发 测试技术 持续交付
【git分支管理策略】如何高效的管理好代码版本
【git分支管理策略】如何高效的管理好代码版本
31 0
|
28天前
|
开发工具 git
Git 保姆级教程(二):Git 分支
Git 保姆级教程(二):Git 分支
|
1月前
|
开发工具 git 开发者
【专栏】探讨了 Git 中的 `git rebase` 操作,它用于重新应用提交到另一分支,改变历史顺序
【4月更文挑战第29天】本文探讨了 Git 中的 `git rebase` 操作,它用于重新应用提交到另一分支,改变历史顺序。与 `git merge` 不同,rebase 重写提交历史,提供简洁线性的历史记录。文章介绍了 rebase 的基本操作、应用场景,如整理提交历史、解决冲突和整合分支,并强调了使用注意事项,如避免在公共分支上操作。尽管 rebase 可以带来整洁的历史和冲突解决便利,但其潜在的风险和可能导致的历史混乱需谨慎对待。理解并恰当使用 `git rebase` 可以提升开发效率和代码质量。
|
1月前
|
开发工具 git 开发者
掌握常见Git操作:技巧与实践
掌握常见Git操作:技巧与实践