zoukankan      html  css  js  c++  java
  • git——merge & revert & log filter & cherry-pick

    有时候会遇到错误Merge的情况,这种情况需要使用-m参数。

                 如:

    $ git log

    commit 414b65a80446********8281c4479f01
    Merge: eb027*****3268
    Author: CHNuser <user@****.com>
    Date:   Wed Mar 4 14:46:27 2020 +0800

        Merge branch 'feature/v*.*.1' of http://giturl into feature/v*.*.1

    这个commit错误地合并了分支,需要撤销merge:

    git revert -m {1 or 2} 414b65a80446********8281c4479f01

    如果要revert到第一个commit,参数选择1,如果要revert到第2个commit,选择2.

    在旧代码分支中被错误了引入了新代码的情况:根据情况选择

    1.利用revert撤销

    2.cherry-pick重新应用相关的commit。

    可以考虑按照如下步骤处理,需要利用到git-bash:

    1. 先确认准确版本的Commit信息
    2. 根据新Commit的数量决定处理策略,有以下两种方式
      1. 直接用git revert撤销相关修改
      2. 用git reset hard会到指定commit,然后使用git cherry-pick命令应用相关修改

    一般来说,commit的过滤可以参考如下方式进行。

    git log  --branches=*v2.0*  --since 2019-03-26  --pretty=format:"%an %h %aD %s " --reverse |grep  -i  "panpan|tiantian"

    再利用cut -d “ “ -f2可取得commit number。随后可利用xargs -n 1 进行批量处理了。

    panxi@**** MINGW64 /d/Projects/projectname (feature/v1.1)
    $ git log --branches=*feature/v1.1_issues_p1* --since 2020-03-01 --pretty=format:"%an %h %aD %s " --reverse |grep  -i  "panpan"
    CHNpanpan 6ec***1f Wed, 4 Mar 2020 12:03:40 +0800 Feature #8858
    CHNpanpan eb8***ba Wed, 4 Mar 2020 14:22:41 +0800 Feature #8858
    CHNpanpan cb***2b4 Wed, 4 Mar 2020 15:10:23 +0800 Feature #8858
    CHNpanpan  8f***bad Wed, 4 Mar 2020 17:54:05 +0800 fix 账户充值:如果存在未完成的钱包绑定,则不允许赠送
    CHNpanpan 60***250 Wed, 4 Mar 2020 17:55:01 +0800 Merge branch 'feature/v1.1_issues_p1' of http://****** into feature/v1.1_issues_p1
    CHNpanpan 0e***19b Wed, 4 Mar 2020 18:47:37 +0800 代码优化
    CHNpanpan d***4fc Wed, 4 Mar 2020 21:08:24 +0800 fix Feature #8858
    CHNpanpan 80***c5 Fri, 6 Mar 2020 12:46:01 +0800 fix 18854
    CHNpanpan c7***db Fri, 6 Mar 2020 12:47:49 +0800 Merge branch 'feature_v1.1_issues_p1_pan' into feature/v1.1_issues_p1
    CHNpanpan 8a***57 Fri, 6 Mar 2020 12:48:13 +0800 Merge branch 'feature/v1.1_issues_p1' of http://****** into feature/v1.1_issues_p1
    CHNpanpan 5e***08b Fri, 6 Mar 2020 19:20:42 +0800 Bug #8974
    CHNpanpan 0b7***3f Mon, 9 Mar 2020 13:24:28 +0800 update es setting
    
    
    panxi@**** MINGW64 /d/Projects/projectname (feature/v1.1)
    $ git log --branches=*feature/v1.1_issues_p1* --since 2020-03-01 --pretty=format:"%an %h %aD %s " --reverse |grep  -i  "panpan" | cut -d " "  -f2 | xargs -n 1
    6e***21f
    eb***fba
    cb***2b4
    8f***ad
    60***250
    0e7***19b
    d1***4fc
    80***c5
    c7***db
    8***57
    5e***8b
    0***3f
    
    
    $ git cherry-pick 6e***21f #如果有冲突,需要处理之后 git add && git commit
    $ git push
    

      

  • 相关阅读:
    list拖动
    android sdk
    AwwwB推荐网站全盘克隆
    WPF中的容器控件——WrapPanel
    WPF中的容器控件——StackPanel
    MFC应用程序中指针的使用
    排序算法之插入排序
    转:MFC 常用语句集锦
    【转】MFC学习总结
    排序算法之冒泡排序
  • 原文地址:https://www.cnblogs.com/panpanwelcome/p/12448481.html
Copyright © 2011-2022 走看看