Eric Sunshine <sunshine@xxxxxxxxxxxxxx> writes: > On Wed, Mar 26, 2025 at 5:07 PM Karthik Nayak <karthik.188@xxxxxxxxx> wrote: >> The 'git-blame(1)' command allows users to ignore specific revisions via >> the '--ignore-rev <rev>' and '--ignore-revs-file <file>' flags. These >> flags are often combined with the 'blame.markIgnoredLines' and >> 'blame.markUnblamableLines' config options. These config options prefix >> ignored and unblamable lines with a '?' and '*', respectively. >> >> However, this option was never extended to the porcelain mode of >> 'git-blame(1)'. Since the documentation does not indicate this >> exclusion, it is a bug. >> >> Fix this by printing 'ignored' and 'unblamable' respectively for the >> options when using the porcelain modes. >> >> Signed-off-by: Karthik Nayak <karthik.188@xxxxxxxxx> >> --- >> diff --git a/t/t8013-blame-ignore-revs.sh b/t/t8013-blame-ignore-revs.sh >> @@ -158,6 +158,16 @@ test_expect_success mark_unblamable_lines ' >> +for opt in --porcelain --line-porcelain >> +do >> + test_expect_success 'mark_unblamable_lines with $opt' ' > > This test title is going to display literal "$opt" rather than the > intended option. Fix this by replacing the single quotes with double > quotes: > > test_expect_success "mark_unblamable_lines with $opt" ' > What a silly miss. Thanks for pointing out. >> + sha=$(git rev-parse Y) && >> + >> + git -c blame.markUnblamableLines=true blame $opt --ignore-rev Y file >actual && >> + test $(grep ^unblamable actual | wc -l) -eq 2 >> + ' >> +done >> @@ -191,6 +201,16 @@ test_expect_success mark_ignored_lines ' >> +for opt in --porcelain --line-porcelain >> +do >> + test_expect_success 'mark_ignored_lines line_porcelain' ' > > Similarly, this is going to display the same title for both cases, > which isn't as helpful as it could be. Presumably, you instead wanted > this (using double quotes): > > test_expect_success "mark_ignored_lines with $opt" ' > Yup, this needs to be fixed too. Thanks again. >> + sha=$(git rev-parse Y) && >> + >> + git -c blame.markIgnoredLines=true blame $opt --ignore-rev Z file >actual && >> + test $(grep ^ignored actual | wc -l) -eq 2 >> + '
Attachment:
signature.asc
Description: PGP signature