赞
踩
同步一个提交的命令:git cherry-pick -x 提交id
同步多个提交的命令:git cherry-pick -x 提交id1 提交id2 提交id3 ...
-x
可加可不加,一般建议加,因为我们这次的提交会产生新在 commit ID
,加了 -x
他会在提交信息的末尾追加一行 (cherry picked from commit ...)
,方便以后查到这个提交是如何产生的。
同步多个提交时要注意,提交较早的 commit ID
要放在前面,比如 commitIDA
比 commitIDB
提交早,那么同步的时候就要这样:git cherry-pick -x commitIDA commitIDB
官方文档:https://git-scm.com/docs/git-cherry-pick
演示将 dev 分支上的一个或者多个提交把他给提交到 master 分支上
1、现在去 dev
分支上找到这个提交的 commit ID
2、切换成 master
分支, 切换命令 git checkout master
3、把要同步过来的提交合到当前分支
git cherry-pick -x 5aecfa1ac1d1bd665d53f9f733395563ecdb5846
# 合并多个提交到当前分支, 要注意提交较早的commit ID 要放在前面
# 这里 d73d8e55 就比 5aecfa1 提交早所以它在前面
git cherry-pick -x d73d8e55cc551c5e2af398eb89830e6d3d97852f 5aecfa1ac1d1bd665d53f9f733395563ecdb5846
4、就可以把本地的提交给提交到远程仓库了 git push origin master
5、如果要取消这次 cherry-pick
则使用,这种情况下当前分支恢复到 cherry-pick
前的状态,没有任何改变。
git cherry-pick --abort
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。