git cherry-pick
可以实现将一个分支上的一部分commit,复制给另外一个分支
如果一个分支master上面的提交记录为(git log 查看
):a->b->c->d
想把master的b提交复制给feature分支,过程:
// 查看log,找到commit的hash
git log
// 切换到目标分支
git checkout feature
// 复制commit
git cherry-pick commithash
// 这时可能会出现冲突,进行冲突解决后,需要对修改的进行跟踪
git add .
// 完成复制
git cherry-pick --continue
git cherry-pick
命令的参数,不一定是提交的哈希值,分支名也是可以的,表示转移该分支的最新提交。
转移多个提交
git cherry-pick commithash1 commithash2 ...
转移区间(a到d的全部commit,闭区间,a和d必须有时序性)
git cherry-pick commithash1..commithash2
转移区间(a到d的全部commit,左开右闭,a和d必须有时序性)
git cherry-pick commithash1^..commithash2