美文网首页
Git 合并指定的commit

Git 合并指定的commit

作者: 美少女星矢 | 来源:发表于2018-04-26 14:19 被阅读0次

Git命令

git cherry-pick <commit id>

使用背景

  • 用户中心需要优化,在分支daily/1.3.0上开发。
  • 在优化的过程中提取了公共部分独立成文件或模块,提交到了daily/1.3.0上。此时分支上即有公共部分,又有此次优化的功能点。
  • 突发奇想,想要对别的地方进行优化、抽象别的方法,但是又不想影响此次的功能,即不想也不能提交在daily/1.3.0上。
  • 如果基于daily/1.3.0新建分支的话,除公共优化部分还会带来多余的功能点;但是基于干净分支新建一个分支,优化的历史记录难道要一个一个拷贝粘贴????
  • 还好,在优化的时候,抽象方法相对功能点独立,commit比较干净

目的

新建一个干净的优化分支,把daily/1.3.0关于公共优化部分的commit搞过来

工具

WebStorm

步骤

  1. 基于master或别的干净、可上线的分支新建并切换至分支refine/routes-common
  2. 打开WebStorm下的Version Control,选择Log选项卡,Branch选择daily/1.3.0
Version Control: Log选项卡

3.选择需要合并的commit, 右键->cherry-pick (之所以不使用命令行是多选commit的时候比较麻烦)

选择需要cherry-pick的分支
  1. 像普通提交一样commit,如果有冲突,像普通解决冲突一样解决


    commit

其实

如果只涉及文件变动,也可以使用git checkout来合并文件夹

参考

git cherry-pick 小结

相关文章

网友评论

      本文标题:Git 合并指定的commit

      本文链接:https://www.haomeiwen.com/subject/opwplftx.html