[gitsourcetree]cherry pick和遴选的使用
前言
cherry pick. 拷贝其中的某一次提交记录.
本文就介绍一种更加快捷的方式 cherry pick
.
介绍
此方法主要用于2分支分别独立维护的情况, 即某一分支已经上线了spring-202108
, 同时也有开发spirnt-202109
. 此时如果有提交内容, 既需要提交到sprint-202108
和sprint-202109
. 此时主要有3种方式:
- 方法1: 分别在
08
和09
分支提交2次提交记录. - 方法2: 先提交到
08
上, 随后使用遴选(cherry pick)将之前的提交记录也提交一份到09
上. - 方法3: 合并分支
08
到09
上. (如果08
和09
是不同的分支, 且独立维护的话, 则此方法不合适.)
遴选使用和demo
比如我们有2个分支tmp
和tmp2
. 此时tmp
分支发生了更新<63af0ce>
, 此时我们要将本次的修改也提交到tmp2
上. 此时操作如下所示:
- 步骤1 切换当前分支到需要cherry pick到分支. (此处为
tmp2
)
- 步骤2 选择需要cherry pick的提交节点. 此处为
<63af0ce>
选择cherry pick(
遴选
)
此时如果有冲突. 会在这个头节点 解决冲突后合并
由于此处我处于
tmp2
(我方).tmp
也就是cherry pick
的属于他方. 所以我此处选择以他人解决冲突. (当然你也可以选择手动进行合并.)
遴选冲突解决后 文件情况
此时 提交推送即可.
总结
优点&作用
- cherry pick(
遴选
)可以将某一个的提交放置到当前分支的头部.- 操作方便快捷.
缺点
- 每次只能遴选一个分支.
缺点解决办法
缺点解决办法
- 准备一个临时分支将需要遴选的多次连续提交进行合并. 随后将提交rebase成一次提交.
- 面对多次不连续提交的情况. 看起来只能通过
多次
临时分支的依次遴选
和人肉手动合并
的方式进行解决了.
小插曲
git --no-optional-locks -c color.branch=false -c color.diff=false -c color.status=false -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree push -v origin refs/heads/tmp2:refs/heads/tmp2
Pushing to https://github.com/GGG/letcode-all.git
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: unable to access 'https://github.com/GGG/letcode-all.git/': The requested URL returned error: 403
Completed with errors, see above
看起来是密码失效了. github
从8月13日的密码验证策略作出了改变.
[gitsourcetree]cherry pick和遴选的使用相关推荐
- git cherry pick
直接将选定的其他分支的commit,提交到该分支上 不建议使用 git rebase --onto 使用cherry pick代替 http://weblog.avp-ptr.de/20120928/ ...
- 在gerrit上cherry pick多笔提交到一个仓库中
我们的要求是在dvr_service仓库上从其他分支cherry pick 两笔提交到release/b03chn_rel_sop_3_nobo分支 这两笔提交分别如图所示 如图所示,B02-5746 ...
- 1.Cherry Pick与Create Patch的区别
Cherry Pick与Create Patch的区别 结论 实验 场景1:应用时无冲突 场景2: 应用时产生冲突 使用cherry pick 使用patch 场景3:产生冲突,并且有其他文件的变更 ...
- idea cherry pick 功能 git log 窗口 冲突conflict
git log 窗口 参考 source tree cherry pick, merge conflict merge conflict 冲突 <<<<<<< ...
- IDEA git cherry pick 简单使用
cherry pick的作用: 参考了一些博客, eg: 参考博客1 参考博客2 再做了个小案例后,我目前的理解是,cherry pick的作用是将一个分支的部分提交/历史提交,可以合并到另外一个分支 ...
- gerrit cherry pick to merge code
开发中经常遇到,不同branch代码需要同步修改的问题, 通过gerrit cherry pick to功能可以方便的将已提交A Branch 的修改同步到B Branch上,提升工作效率
- 【git cherry pick冲突】
修好了bug愉快的打算commit提交的时候 看到提示语句是can not commit changes due to unresolved conflicts 在Android Studio中寻找图 ...
- Git可视化工具SourceTree使用手册:中英文/命令对照表
目录 前言 中英文/命令对照表 顶部操作栏 左侧树 右键工作副本 右键本地分支 右键标签 右键origin 右键远程分支 右键贮藏 右侧工作区 右键工作副本-已/未暂存文件 右键分支-分支列表中的节点 ...
- Android应用开发进阶,一线互联网企业高级Android工程师面试题大全
2.7 Volley 2.7.1 Volley的工作流程 2.7.2 Volley的使用 2.7.3 Volley的封装 2.7.4 Volley源码分析 2.8 RxJava 2.8.1 RxJav ...
最新文章
- Keymob:移动广告的优化工具
- matlab sol函数,sol=bvp4c(@f,@fsbc,solinit)解决有上下限的ODE函数
- worktools-源码下拉问题
- Redhat Linux 7.2 打开或关闭防火墙
- vs2022 无法打开包括文件: “crtdbg.h” no such file or directory
- C++11 std::bind 和 std::placeholder
- TCP的流模式与UDP的报文模式对比
- 工作201:所需功能优化
- php tool pagination,php实现分页工具类分享
- python3cookbook_python3-cookbook读书笔记(四)
- 增值税怎么用计算机算,增值税计算器
- 联想电脑安装黑苹果全教程
- 15、Java基础---继承和访问属性
- DDR中的一些知识点说明(ODT,ZQ校准,OCT,TDQS)【转载】
- [笨叔点滴6] 叔,这个git咋玩啊?
- 提升个人效率减少焦虑——GTD法则
- 今日头条2019年笔试题 机器人跳跃问题
- 如何让自己变得更加成熟
- 2022金九银十最全的软件测试面试题,能不能找到合适工作就看它了
- java捕鱼达人_java捕鱼达人游戏(源码)