Skip to content

Commit

Permalink
Add git blame ignore file
Browse files Browse the repository at this point in the history
This commit adds a new file with the SHA1 of commits to ignore when
running git blame. This is important because of the recent adoption of
black as our code formatting tool in Qiskit#6361 we caused a large amount of
code churn to change the code formatting. However using the ignore file
is a local opt-in feature for git and not something we can enable
globally by default. To facilitate this a section is added to the bottom
of the contributing guide to document how this file can be used.
  • Loading branch information
mtreinish committed May 5, 2021
1 parent 2eee566 commit 45046a6
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 0 deletions.
1 change: 1 addition & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
2eee56616d50a9e26756f855ef4aa0135920ad78
25 changes: 25 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -422,3 +422,28 @@ the following steps:

The `stable/*` branches should only receive changes in the form of bug
fixes.

## Dealing with the git blame ignore list

In the qiskit-terra repository we maintain a list of commits for git blame
to ignore. This is mostly commits that are code style changes that don't
change the functionality but just change the code formatting (for example,
when we migrated to use black for code formatting). This file,
`.git-blame-ignore-revs` just contains a list of commit SHA1s you can tell git
to ignore when using the `git blame` command. This can be done one time
with something like

```
git blame --ignore-revs-file .git-blame-ignore-revs qiskit/version.py
```

from the root of the repository. If you'd like to enable this by default you
can update your local repository's configuration with:

```
git config blame.ignoreRevsFile .git-blame-ignore-revs
```

which will update your local repositories configuration to use the ignore list
by default.

0 comments on commit 45046a6

Please sign in to comment.