码迷,mamicode.com
首页 > 其他好文 > 详细

git cherry-pick

时间:2016-03-12 01:31:55      阅读:477      评论:0      收藏:0      [点我收藏+]

标签:

git cherry-pick

使用场景:

本地有多个分支,local_branch_A, local_branch_B, ...

在本地分支上local_branch_A 上做了 commit,想在此提交到 local_branch_B 上,

这时,如果你不怕出错,不嫌麻烦,当然可以在local_branch_B上把上次提交的代码在重写一遍提交。

但是git提供了更好的解决办法:git cherry-pick <commit_id>

具体操作过程:

首先是在local_branch_A上做了提交,有了提交_id,

然后通过git log 查询到提交的id 病记录下来,

然后切换到 local_branch_B上,

使用 git cherry-pick <commit_id> 

命令执行完查看一下状态,

这事如果没有问题,没有冲突,就等于是已经在loca_branch_B上执行了commit,

这时在local_branch_B上就可以直接push了。

代码示例:

假设现在在 local_branch_A 上,

git branch -vv

git status

git add <some_file>

git commit -m "comments"

git log

<commit_id>  //得到commit_id并记录

git checkout <local_branch_B>

git branch -vv

git status

git cherry-pick <commit_id>

如果没有冲突,就是已经做了commit。

如果有冲突, 需要先解决冲突,可以手动merge,也可以使用mergetool

解决完冲突后,在执行

git add <merged_file>

git commit -m "comments, use cherry-pcik produce some conflicts, merge some file"

 

全部执行完毕就可以 push了。

 

 

git cherry-pick

标签:

原文地址:http://www.cnblogs.com/icenter/p/5267699.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!