Subject: RE: add a blank line when a commit has no parent in log output?

From: "Jason Pyeron" <[email-masked]>
Date: Thu, 14 Jan 2021 15:44:59 -0500

Kyle:

Need you to whip up a patch (back port it to current Cygwin git too), see below. It will help with cleaning up Cresaptown branches. Or if you think Watson can do it, give it to him.

> -----Original Message-----
> From: Philippe Blain <[email-masked]>
> Sent: Thursday, January 14, 2021 2:29 PM
> To: [email-masked]; Jason Pyeron <[email-masked]>
> Subject: Re: add a blank line when a commit has no parent in log output?
> 
> Hi Jason,
> 
> Le 2021-01-14 à 13:30, Jason Pyeron a écrit :
> > Take this git log --format="%C(auto) %h% ad%d% s%C(green)% aE" --graph --date=short
> >
> > | | | *  5505e019c2 2014-07-09 initial xxxxxx@xxxx
> > | | | *  3e658f4085 2019-09-10 (wiki/wip-citest, origin/wip-citest) Added defau
> > | | | *  ad148aafe6 2019-09-10 Added default CI/CD Jenkinsfile (from f7daf088)
> >
> > One might assume 5505e019c2 and 3e658f4085 are related. But git cat-file -p 5505e019c2
> > tree 546c6b71f01e7fd086c8adb832518240b71a9075
> > author sam swindell <xxxxxx@xxxx> 1404878701 -0400
> > committer sam swindell <xxxxxx@xxxx> 1404878701 -0400
> >
> > initial
> >
> >
> > Is there a way to have it look like:
> >
> > | | | *  5505e019c2 2014-07-09 initial xxxxxx@xxxx
> > | | |
> > | | | *  3e658f4085 2019-09-10 (wiki/wip-citest, origin/wip-citest) Added defau
> > | | | *  ad148aafe6 2019-09-10 Added default CI/CD Jenkinsfile (from f7daf088)
> >
> > Or
> >
> > | | | #  5505e019c2 2014-07-09 initial xxxxxx@xxxx
> > | | | *  3e658f4085 2019-09-10 (wiki/wip-citest, origin/wip-citest) Added defau
> > | | | *  ad148aafe6 2019-09-10 Added default CI/CD Jenkinsfile (from f7daf088)
> >
> 
> If you remove '--graph', then you can add '--show-linear-break' [1]. Unfortunately
> these two options do not work together. I think your suggestion to have the '*'
> be changed to '#' for root commit is a great idea.

Patch description

When --graph is used

--show-linear-break converts the * to a #

--show-linear-break=x converts the * to a x

> 
> In the mean time, I use this trick:
> 
>      git log --date=short --format='%C(auto) %h% [%<(2,trunc)%p] ad%d% s%C(green)% aE'
> 
> This adds the abbreviated parent hashes (%p) but truncated to 2 characters ([2], [3]). So
> the brackets will be empty for root commits.
> 
> Cheers,
> 
> Philippe.
> 
> 
> [1] https://git-scm.com/docs/git-log#Documentation/git-log.txt---show-linear-breakltbarriergt
> [2] https://git-scm.com/docs/git-log#Documentation/git-log.txt-empem
> [3] https://git-scm.com/docs/git-log#Documentation/git-log.txt-emltltNgttruncltruncmtruncem