blame: respect .git-blame-ignore-revs automatically
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest2 patches 16 repliesIn review
- v11 patch 4 repliesSuperseded
Changes in v2 from the cover letter
================
* Updated the commit message for the first patch. I incorporated Kristoffer’s suggestions by directly using the example he provided, ensuring the commit message aligns with the project's standards.
* Attempted to use --no-ignore-revs-file to bypass the .git-blame-ignore-revs file, but observed that it did not ignore the specified revisions.
* Introduced the --override-ignore-revs option (short form: -O) as a straightforward method to override any configured revision ignores, providing users with more control.
* For the second commit, I applied Kristoffer’s feedback in writing the commit message to ensure consistency and clarity.
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | blame: respect .git-blame-ignore-revs automaticallybuiltin/ t/ | +34 | 12 replies | |
| 2/2 | blame: introduce --override-ignore-revs to bypass ignore revisions listbuiltin/ t/ | +32 | 4 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.
Cover letter [PATCH v2 0/2] blame: respect .git-blame-ignore-revs automatically
Summary
=======
This patch introduces the ability for git blame to automatically respect the .git-blame-ignore-revs file, which can help users streamline their workflows by ignoring revisions for non-functional changes.
The feature is inspired by similar practices in other projects like Chromium, and it aligns with needs expressed by users in discussions around revision-ignoring mechanisms for git blame.
I have incorporated suggestions provided during the review of patch v1, including improvements to the commit message and addressing how to override ignore revisions using a new option.
Patch Updates and Improvements
==============================
Changes since v1
================
* Updated the commit message for the first patch. I incorporated Kristoffer’s suggestions by directly using the example he provided, ensuring the commit message aligns with the project's standards.
* Attempted to use --no-ignore-revs-file to bypass the .git-blame-ignore-revs file, but observed that it did not ignore the specified revisions.
* Introduced the --override-ignore-revs option (short form: -O) as a straightforward method to override any configured revision ignores, providing users with more control.
* For the second commit, I applied Kristoffer’s feedback in writing the commit message to ensure consistency and clarity.
Abhijeetsingh Meena (2):
blame: respect .git-blame-ignore-revs automatically
blame: introduce --override-ignore-revs to bypass ignore revisions
list
builtin/blame.c | 16 +++++++++++++++- t/t8015-blame-default-ignore-revs.sh | 26 ++++++++++++++++++++++++++ t/t8016-blame-override-ignore-revs.sh | 25 +++++++++++++++++++++++++ 3 files changed, 66 insertions(+), 1 deletion(-) create mode 100755 t/t8015-blame-default-ignore-revs.sh create mode 100755 t/t8016-blame-override-ignore-revs.sh
base-commit: ef8ce8f3d4344fd3af049c17eeba5cd20d98b69f
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1809%2FEthan0456%2Fblame-auto-ignore-revs-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1809/Ethan0456/blame-auto-ignore-revs-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/1809
Range-diff vs v1:
1: 666404681d9 ! 1: 4ed930cab1b blame: respect .git-blame-ignore-revs automatically
@@ Metadata
## Commit message ##
blame: respect .git-blame-ignore-revs automatically
- Modify git blame to automatically respect a .git-blame-ignore-revs
- file if it exists in the repository. This file is used by many projects
- to ignore non-functional changes, such as reformatting or large-scale
- refactoring, when generating blame information.
+ git-blame(1) can ignore a list of commits with --ignore-revs-file.
+ This is useful for marking uninteresting commits like formatting
+ changes, refactors and whatever else should not be “blamed”. Some
+ projects even version control this file so that all contributors can
+ use it; the conventional name is .git-blame-ignore-revs.
- Before this change, users had to manually specify the file with the
- --ignore-revs-file option. This update streamlines the process by
- automatically detecting the .git-blame-ignore-revs file, reducing
- manual effort.
-
- This change aligns with the standardized practice in many repositories
- and simplifies the workflow for users.
+ But each user still has to opt-in to the standard ignore list,
+ either with this option or with the config blame.ignoreRevsFile.
+ Let’s teach git-blame(1) to respect this conventional file in order
+ to streamline the process.
@@ t/t8015-blame-default-ignore-revs.sh (new)
+'
+
+test_done
- \ No newline at end of file
-: ----------- > 2: 8d2fa3af796 blame: introduce --override-ignore-revs to bypass ignore revisions list
Signature · 1 line
gitgitgadget