zoukankan      html  css  js  c++  java
  • [Practical Git] Filter commit history with git log arguments

    In the last lesson, we learned how to format the git log output; in this lesson we will learn how to filter down to a specific set of commits. By default, git log shows every commit in a repo. We will walk through using a bunch of options to filter our git log commits to a more meaningful set (-n--after--before--author--grep-S-G--no-merges{ref}..{ref}{files}). We will also show how all of the formatting and filtering options can be composed together to query exactly what you are looking for in your commit history.

    Show lasat N commit:

    git log -3 // show last three commit

    Show commits from a center time:

    git log --after="yesterday" // Show the commit between yesterday and today
    git log --after="10 minutes ago"
    git log --after="2 weeks ago"
    git log --after="3/15/16" // Match 15, 2016

    Combine with --before:

    git log --after="3/15/16" --before="yesterday"

    The same as:

    git log --since="3/15/16" --until="yesterday"

    Filter by author:

    git log --author="Tavor"

    Filter by the commit message:

    git log --grep="copyright"

    Filter by the code using string:

    git log -S"Math.random" -p // get all the commit which has Math.random changes in the code, and use -p option to see the code

    Filter by the code using Regex:

    git log -p -GMath|random // Using 'G' without quotes and follow with regex math or random

    Ingore the case:

    git log -i --author="Jane" // search both for "Jane" and "jane"
    
    git log --author="Jane" // search only for "Jane"

    Filter out merges commit:

    git log --no-merges

    See the commits between two branch:

    git log master..cool-feature

    Search by files:

    git log LIENCE.md README.md // search for lience and readme files

    Example:

    git log -3 README.md -p -i --author="Tavor" // Want to see last 3 change on README.md file by author Tavor, ignor the case, and show the code
    git log -S"Math" --after="2 months ago" --oneline --stat
  • 相关阅读:
    用例图会不会
    存储过程进阶(vb.net+SQL Server2008环境)
    众说纷纭,我也说“云”
    三层架构之抽象工厂加反射实现数据库转换
    三层架构之抽象工厂加反射——实现数据库转换
    存储过程懂不懂
    8个对于Web设计和开发人员非常有用的在线工具
    TexturePacker的使用(图片打包再一起)
    cocos2dx游戏摇杆的实现方法
    cocos2dx 矩形碰撞检测
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5759503.html
Copyright © 2011-2022 走看看