美文网首页
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