git cherry-pick

--A---B---C---D
    \
     E
      \
        F

假设有以上ABCDEF等一些提交,当前在D这个提交点上,如果想把F重新提交到D所在分支的后面,可以使用 git cherry-pick F,这时会变成如下状态

 

--A---B---C---D---F‘
    \
     E
      \
        F

 

 

git cherry-pick <commit id>:单独合并一个提交

git cherry-pick  -x <commit id>:同上,不同点:保留原提交者信息。

Git从1.7.2版本开始支持批量cherry-pick,就是一次可以cherry-pick一个区间的commit。

 

git cherry-pick <start-commit-id>..<end-commit-id>
或
git cherry-pick <start-commit-id>^..<end-commit-id>

 

前者表示把<start-commit-id>到<end-commit-id>之间(左开右闭,不包含start-commit-id)的提交cherry-pick到当前分支;

后者表示把<start-commit-id>到<end-commit-id>之间(闭区间,包含start-commit-id)的提交cherry-pick到当前分支。

posted @ 2017-03-08 00:25  raindream  阅读(213)  评论(0编辑  收藏  举报