- What happens if you stop using --pretty=format:%h and replace it
with something like --oneline?
--oneline works correctly as expected (example below).
$ git log --graph --oneline -2 --name-status
* bf7ace7daf (HEAD -> rm/option-for-name-status) wip: --ns for --name-status
| M diff.c
* 592e5c5bce (origin/master, origin/HEAD, master) Merge pull request
#994 from jeffhostetler/jeffhostetler/fscache_nfd
|\
- What happens if you keep using --pretty=format:%h but replace
--name-status with something else, e.g. --raw or --stat?
I see the same issue with --raw and --stat (examples below).
$ git log --graph --pretty=format:'%h' -2 --raw
* bf7ace7daf|
| :100644 100644 84dba60c40... 87dfabf4a9... M diff.c
* 592e5c5bce
|\
$ git log --graph --pretty=format:'%h' -2 --stat
* bf7ace7daf|
| diff.c | 2 +-
| 1 file changed, 1 insertion(+), 1 deletion(-)
* 592e5c5bce
|\
I believe it's not my custom format that is causing the issue. I'm including this information that may not be relevant. I apologize in advance for that. I had simplified the custom format in my previous email. For below custom format I still see the pipe incorrectly placed.
$ git log --graph --date=relative --decorate --abbrev-commit
--format=format:'%h - %aD (%ar)%d%n %s - %an' -2 --name-status
* bf7ace7daf - Mon, 6 Feb 2017 13:09:32 -0800 (7 days ago) (HEAD ->
rm/option-for-name-status)
| wip: --ns for --name-status - Rishikesh Mandvikar|
| M diff.c
* 592e5c5bce - Wed, 1 Feb 2017 16:35:30 +0100 (12 days ago)
(origin/master, origin/HEAD, master)
|\ Merge pull request #994 from
jeffhostetler/jeffhostetler/fscache_nfd - Johannes Schindelin
If I were to put a '%n' at the end (example below), the pipe is correctly placed with or without the --name-status option. But in case of "without the --name-status option", there is an extra blank line. It seems that my custom format is requiring a %n at the end. I consider my custom format as a --twoline option and I feel the behavior should match --oneline when using options.
With --name-status: This works correctly.
$ git log --graph --date=relative --decorate --abbrev-commit
--format=format:'%h - %aD (%ar)%d%n %s - %an%n' -2 --name-status
* bf7ace7daf - Mon, 6 Feb 2017 13:09:32 -0800 (7 days ago) (HEAD ->
rm/option-for-name-status)
| wip: --ns for --name-status - Rishikesh Mandvikar
|
| M diff.c
|
* 592e5c5bce - Wed, 1 Feb 2017 16:35:30 +0100 (12 days ago)
(origin/master, origin/HEAD, master)
|\ Merge pull request #994 from
jeffhostetler/jeffhostetler/fscache_nfd - Johannes Schindelin
Without --name-status: This works but has extra blank line between commits though.
$ git log --graph --date=relative --decorate --abbrev-commit
--format=format:'%h - %aD (%ar)%d%n %s - %an%n' -2
* bf7ace7daf - Mon, 6 Feb 2017 13:09:32 -0800 (7 days ago) (HEAD ->
rm/option-for-name-status)
| wip: --ns for --name-status - Rishikesh Mandvikar
|
* 592e5c5bce - Wed, 1 Feb 2017 16:35:30 +0100 (12 days ago)
(origin/master, origin/HEAD, master)
|\ Merge pull request #994 from
jeffhostetler/jeffhostetler/fscache_nfd - Johannes Schindelin
I think that requiring to end custom formats with %n with options is not good. So I think this is a bug.
Thanks, RM