第一次在csdn发文章,还没找到节奏,请多多指教~
这次给大家介绍一下Git中常用的cherry-pick。
cherry-pick的作用:将现有的某个提交应用到当前分支上
git cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]
[-S[<keyid>]] <commit>…
git cherry-pick --continue
git cherry-pick --quit
git cherry-pick --abort
1.基础用法
首先看一下最简单的用法。
git cherry-pick <commit-id>
这个用法就是将目前仓库中已存在的某个提交A应用到当前分支。在应用成功以后,当前分支的HEAD引用变为A。
示例:切换到dev分支下,并将master分支中的C提交应用到dev分支:
如上图所示,当前仓库有两个本地分支:master和dev。其中master分支中有A,B,C,D 4个提交,dev分支有A,B,E,F 4个提交。
$ git checkout dev
Switched to branch 'dev'
$ git cherry-pick feca78f
[dev bc9f684] C
Date: Sat Jan 19 20:46:31 2019 +0800
1 file changed, 1 insertion(+)
create mode 100644 C
$ git log --oneline --abbrev-commit
bc9f684 (HEAD -> dev) C
14f4789 F
eeb02b1 E
9c0305c B
4cd0c6d A
此时通过gitk看到的提交图形是这样的:
2.阶进用法
2.1 -n
git cherry-pick -n <commit-id>
这个用法是将目前仓库中存