• mgiuca@chromium.org's avatar
    git hyper-blame: Added automatically ignoring revs from a file. · cd0a1cf3
    mgiuca@chromium.org authored
    Added --ignore-file argument, so you can specify ignored commits in a
    file rather than as raw command-line arguments. Also, automatically
    searches for a file called .git-blame-ignore-revs, which is
    automatically used as an ignore list by default.
    
    Also, specifying an unknown revision (either on the command line or in a
    file) now generates a warning, not an error.
    
    Notes on some decisions:
    - The file is called .git-blame-ignore-revs (not mentioning hyper-blame)
      because we may use the same list in tools other than hyper-blame in
      the future.
    - We look at the *currently checked out* version of
      .git-blame-ignore-revs (not the version at the specified revision) for
      consistency with .git-ignore. Because we only expect revisions to be
      added (not deleted), it should be fine to use an ignore list from a
      newer version than the revision being blamed.
    - We considered using git notes for the ignore list so that you could
      add a revision to the ignore list without needing a follow-up CL.
      However, there are some problems with this approach. git notes is not
      automatically synced with git clone/pull. Also the Chromium infra
      tools (Reitveld, CQ) are not set up to allow modification of git
      notes, nor are changes to git notes subject to OWNERS checks. Using a
      regular file ensures all users synced to a particular revision are
      using the same ignore list.
    
    BUG=574290
    
    Review URL: https://codereview.chromium.org/1697423004
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@298897 0039d316-1c4b-4281-b951-d872f2087c98
    cd0a1cf3
git_hyper_blame.py 12.2 KB