当前位置: 首页 > news >正文

外企网站建设湖南佳程建设有限公司网站

外企网站建设,湖南佳程建设有限公司网站,中山建网站推荐,广州网站制作商前言 git cherry-pick是git中非常有用的一个命令,cherry是樱桃的意思,cherry-pick就是挑樱桃,从一堆樱桃中挑选自己喜欢的樱桃,在git中就是多次commit中挑选一个或者几个commit出来,也可以理解为把特定的commit复制到…

前言

git cherry-pick是git中非常有用的一个命令,cherry是樱桃的意思,cherry-pick就是挑樱桃,从一堆樱桃中挑选自己喜欢的樱桃,在git中就是多次commit中挑选一个或者几个commit出来,也可以理解为把特定的commit复制到一个新分支上。

应用场景

commit 都提交了,为什么还要复制新的出来?

应用场景1:有时候版本的一些优化需求开发到一半,可能其中某一个开发完的需求要临时上,或者某些原因导致待开发的需求卡住了已开发完成的需求上线。这时候就需要把 commit 抽出来,单独处理。

应用场景2:有时候开发分支中的代码记录被污染了,导致开发分支合到线上分支有问题,这时就需要拉一条干净的开发分支,再从旧的开发分支中,把 commit 复制到新分支。

命令使用

复制单个

现在有一条feature_cherrypick分支,commit 记录如下:

commit 09cc27103ea4b5ec6f9827e41583e3f0fdbb5efb (HEAD -> feature_cherrypick, origin/feature_cherrypick)
Author: aiqinhai <aiqinhai@qq.com>                                                                                                             
Date:   Fri Sep 22 21:20:39 2023 +0800                                                                 [修改代码]cherryPick第六次   

需要把 09cc27103ea4b5ec6f9827e41583e3f0fdbb5efb 这次commit复制到另一个分支,首先把 commitHash 复制下来,然后切到 master 分支。master分支当前在cherryPick3()这个版本,使用cherry-pick把 09cc27103ea4b5ec6f9827e41583e3f0fdbb5efb commit应用到当前分支。由于feature_cherrypick分支和master分支差三个分支,在进行git cherry-pick之后出现冲突,这时候进行冲突解决即可。

复制多个

以上是单个 commit 的复制,下面再来看看 cherry-pick 多个 commit 要如何操作。一次转移多个提交:

git cherry-pick commit1 commit2

上面的命令将 commit1 和 commit2 两个提交应用到当前分支。多个连续的commit,也可区间复制:

git cherry-pick commit1^..commit2

上面的命令将 commit1 到 commit2 这个区间的 commit 都应用到当前分支(包含commit1、commit2),commit1 是最早的提交。比如说feature_cherrypick分支,有如下三个commit.

commit 668a7ca5daabd8dedbdfdc15e9abad912adc6414
Author: aiqinhai <aiqinhai@qq.com>
Date:   Fri Sep 22 20:52:36 2023 +0800[修改代码]cherryPick第三次commit 5b303cc62fcd3d3121619d1163f2ec3392d65b7c
Author: aiqinhai <aiqinhai@qq.com>
Date:   Fri Sep 22 20:35:31 2023 +0800[修改代码]cherryPick第二次commit 8ffb06b413047d818f920758288491c70c4fa9e4
Author: aiqinhai <aiqinhai@qq.com>
Date:   Fri Sep 22 20:33:55 2023 +0800[修改代码]cherryPick第一次

 我们可以一次性将cherryPick第一次至cherryPick第三次三次commit复制新分支feature_app6.6上,先切换到feature_app6.6分支上,再执行git cherry-pick 8ffb06b413047d818f920758288491c70c4fa9e4^..668a7ca5daabd8dedbdfdc15e9abad912adc6414命令,执行结果如下。

应用成功之后,git push到远程分支即可

cherry-pick 代码冲突

在cherry-pick多个commit时,可能会遇到代码冲突,这时cherry-pick会停下来,让用户决定如何继续操作。我们可以解决冲突,然后使用cherry-pick --continue让cherry-pick继续进行下去。把冲突之后的commit也复制进来,整个流程就完成了。但有时候可能需要在代码冲突后,放弃或者退出流程:

放弃 cherry-pick:
git cherry-pick --abort

回到操作前的样子,就像什么都没发生过。

退出 cherry-pick:
git cherry-pick --quit

不回到操作前的样子。即保留已经cherry-pick成功的 commit,并退出cherry-pick流程。

http://www.yayakq.cn/news/922277/

相关文章:

  • 开发小网站排名ip域名查询地址
  • 做的网站客户拿去维违法小广告治理
  • 贵州手机网站建设网站建设邮
  • 掌握商务网站建设内容腾讯企业邮箱入口网页版
  • 南宁做网站方案网站注册查询
  • 天津武清网站开发网站seo优化技巧
  • 哪些网站可以免费做h5智慧团建官网pc端
  • 网站推广怎么做关键词知名设计公司
  • 装修网站平台推荐南宫28在线注册网站
  • wap网站 劣势同城app开发价目表
  • 在线免费解答网站怎么建佛山市禅城网站建设公司
  • 网站程序怎么做做神秘顾客哪个网站好
  • 国内漂亮大气的网站做网站开发找哪家公司
  • 哈尔滨松北区建设局网站公司网站可以自己做
  • 桥头东莞网站建设python 做企业网站
  • 哪个网站域名解析网站扫二维码怎么做的
  • 韶关网站建设第一品牌站酷网免费素材图库官网
  • 购物网站首页分成几个模块wordpress 301重定向
  • 公司网站怎么选建筑工程网招聘信息
  • 搜索引擎网站制作网站设计尺寸1920
  • 网站建设技术支持祥云平台茶叶电子商务网站开发技术支持
  • 上海专门做培训的网站微信小程序开发文档 菜鸟教程
  • 保护动物网站建设策划书软件技术论坛
  • 南昌城市旅游网站建设网站重新备案需要多长时间
  • 制作荧光字网站域名升级
  • 网站建设专业特长学校网站模板html下载
  • 社交网站 用户互黏度个人未授权做的网站
  • 做宣传语的网站哪些专业要学网页制作
  • 网站能调用一些字体荥阳网站建设公司
  • html网站开场动画效果模板石家庄今天最新新闻头条