* git-log --format missing trailing newline character @ 2024-12-23 20:28 Alejandro Colomar 2024-12-23 20:36 ` Kristoffer Haugsbakk 0 siblings, 1 reply; 7+ messages in thread From: Alejandro Colomar @ 2024-12-23 20:28 UTC (permalink / raw) To: git [-- Attachment #1: Type: text/plain, Size: 644 bytes --] Hi! I'm having trouble scripting around git-log(1), due to a missing newline character at the end of the file. $ git -v git version 2.45.2 $ git log --format=format:'%H' HEAD^^^..HEAD | wc -l 2 $ git log --format=format:'%H' HEAD^^^..HEAD 2ff431ab1b46a25088fe40baf1faf35ea9fac722 e75e6c4504022ae52d877926e63c908d9572088a 178442837d39560a789a8044a8eb90fde3ad7cd7 Would you mind fixing this bug? POSIX requires that text files end in a newline character, precisely for being able to use UNIX tools to process output from arbitrary commands. Have a lovely night! Alex -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: git-log --format missing trailing newline character 2024-12-23 20:28 git-log --format missing trailing newline character Alejandro Colomar @ 2024-12-23 20:36 ` Kristoffer Haugsbakk 2024-12-23 20:49 ` Alejandro Colomar 0 siblings, 1 reply; 7+ messages in thread From: Kristoffer Haugsbakk @ 2024-12-23 20:36 UTC (permalink / raw) To: Alejandro Colomar, git On Mon, Dec 23, 2024, at 21:28, Alejandro Colomar wrote: > Hi! > > I'm having trouble scripting around git-log(1), due to a missing newline > character at the end of the file. > > $ git -v > git version 2.45.2 > $ git log --format=format:'%H' HEAD^^^..HEAD | wc -l > 2 > $ git log --format=format:'%H' HEAD^^^..HEAD > 2ff431ab1b46a25088fe40baf1faf35ea9fac722 > e75e6c4504022ae52d877926e63c908d9572088a > 178442837d39560a789a8044a8eb90fde3ad7cd7 > > Would you mind fixing this bug? POSIX requires that text files end in a > newline character, precisely for being able to use UNIX tools to process > output from arbitrary commands. Is the format here simplified relative to your use case? Or do you just want to process commits as one-hash-per-line? I would use git-rev-list(1) instead in that case. -- Kristoffer Haugsbakk ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: git-log --format missing trailing newline character 2024-12-23 20:36 ` Kristoffer Haugsbakk @ 2024-12-23 20:49 ` Alejandro Colomar 2024-12-23 21:09 ` Andreas Schwab 0 siblings, 1 reply; 7+ messages in thread From: Alejandro Colomar @ 2024-12-23 20:49 UTC (permalink / raw) To: Kristoffer Haugsbakk; +Cc: git [-- Attachment #1: Type: text/plain, Size: 1927 bytes --] Hi Kristoffer, On Mon, Dec 23, 2024 at 09:36:48PM GMT, Kristoffer Haugsbakk wrote: > On Mon, Dec 23, 2024, at 21:28, Alejandro Colomar wrote: > > Hi! > > > > I'm having trouble scripting around git-log(1), due to a missing newline > > character at the end of the file. > > > > $ git -v > > git version 2.45.2 > > $ git log --format=format:'%H' HEAD^^^..HEAD | wc -l > > 2 > > $ git log --format=format:'%H' HEAD^^^..HEAD > > 2ff431ab1b46a25088fe40baf1faf35ea9fac722 > > e75e6c4504022ae52d877926e63c908d9572088a > > 178442837d39560a789a8044a8eb90fde3ad7cd7 > > > > Would you mind fixing this bug? POSIX requires that text files end in a > > newline character, precisely for being able to use UNIX tools to process > > output from arbitrary commands. > > Is the format here simplified relative to your use case? Or do you just > want to process commits as one-hash-per-line? I want to process commits as one-hash-per-line, yes. The entire pipeline I have is this: git rev-list "$old..HEAD" \ | sed 's,.*,https://www.alejandro-colomar.es/src/alx/linux/man-pages/man-pages.git/commit/?h=contrib\&id=&,'; which I run in <hooks/post-update> in my server for printing URIs to all of the newly pushed commits. I use that for easily pasting them to the confirmation email I write to contributors when I apply and push one of their patches. > I would use > git-rev-list(1) instead in that case. Hmmm, thanks! I knew there had to be some git-rev-something for this, but couldn't find it! :) I had workarounded it by doing git log --oneline --abbrev=40 | cut -f1 -d' ' However, git-rev-list(1) is better, of course, so I'll use it. Anyway, it feels awkward that git-log(1) skips the last newline whith --format=format. Should that be fixed? Have a lovely night! Alex > > -- > Kristoffer Haugsbakk > -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: git-log --format missing trailing newline character 2024-12-23 20:49 ` Alejandro Colomar @ 2024-12-23 21:09 ` Andreas Schwab 2024-12-23 21:23 ` Alejandro Colomar 0 siblings, 1 reply; 7+ messages in thread From: Andreas Schwab @ 2024-12-23 21:09 UTC (permalink / raw) To: Alejandro Colomar; +Cc: Kristoffer Haugsbakk, git On Dez 23 2024, Alejandro Colomar wrote: > Anyway, it feels awkward that git-log(1) skips the last newline whith > --format=format. Should that be fixed? If you want terminator semantics, use tformat: instead of format:. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1 "And now for something completely different." ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: git-log --format missing trailing newline character 2024-12-23 21:09 ` Andreas Schwab @ 2024-12-23 21:23 ` Alejandro Colomar 2024-12-26 16:00 ` Junio C Hamano 0 siblings, 1 reply; 7+ messages in thread From: Alejandro Colomar @ 2024-12-23 21:23 UTC (permalink / raw) To: Andreas Schwab; +Cc: Kristoffer Haugsbakk, git [-- Attachment #1: Type: text/plain, Size: 405 bytes --] Hi Andreas, On Mon, Dec 23, 2024 at 10:09:14PM GMT, Andreas Schwab wrote: > On Dez 23 2024, Alejandro Colomar wrote: > > > Anyway, it feels awkward that git-log(1) skips the last newline whith > > --format=format. Should that be fixed? > > If you want terminator semantics, use tformat: instead of format:. Thanks! Have a lovely night! Alex -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: git-log --format missing trailing newline character 2024-12-23 21:23 ` Alejandro Colomar @ 2024-12-26 16:00 ` Junio C Hamano 2024-12-26 17:06 ` Alejandro Colomar 0 siblings, 1 reply; 7+ messages in thread From: Junio C Hamano @ 2024-12-26 16:00 UTC (permalink / raw) To: Alejandro Colomar; +Cc: Andreas Schwab, Kristoffer Haugsbakk, git Alejandro Colomar <alx@kernel.org> writes: > Hi Andreas, > > On Mon, Dec 23, 2024 at 10:09:14PM GMT, Andreas Schwab wrote: >> On Dez 23 2024, Alejandro Colomar wrote: >> >> > Anyway, it feels awkward that git-log(1) skips the last newline whith >> > --format=format. Should that be fixed? >> >> If you want terminator semantics, use tformat: instead of format:. Or, "--format=%H" should do the right thing, as that is a mere short-hand for "--pretty=tformat:%H". ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: git-log --format missing trailing newline character 2024-12-26 16:00 ` Junio C Hamano @ 2024-12-26 17:06 ` Alejandro Colomar 0 siblings, 0 replies; 7+ messages in thread From: Alejandro Colomar @ 2024-12-26 17:06 UTC (permalink / raw) To: Junio C Hamano; +Cc: Andreas Schwab, Kristoffer Haugsbakk, git [-- Attachment #1: Type: text/plain, Size: 905 bytes --] Hi Junio, On Thu, Dec 26, 2024 at 08:00:42AM -0800, Junio C Hamano wrote: > Alejandro Colomar <alx@kernel.org> writes: > > > Hi Andreas, > > > > On Mon, Dec 23, 2024 at 10:09:14PM GMT, Andreas Schwab wrote: > >> On Dez 23 2024, Alejandro Colomar wrote: > >> > >> > Anyway, it feels awkward that git-log(1) skips the last newline whith > >> > --format=format. Should that be fixed? > >> > >> If you want terminator semantics, use tformat: instead of format:. > > Or, "--format=%H" should do the right thing, as that is a mere > short-hand for "--pretty=tformat:%H". Hmmm. So many times having read that part of the manual, and I had never noticed that. I had never seen that tformat existed, and even less that the default was it (when there's %placeholder string). I had always read 'format' instead of 'tformat'. :) Thanks! -- <https://www.alejandro-colomar.es/> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-12-26 17:06 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-12-23 20:28 git-log --format missing trailing newline character Alejandro Colomar 2024-12-23 20:36 ` Kristoffer Haugsbakk 2024-12-23 20:49 ` Alejandro Colomar 2024-12-23 21:09 ` Andreas Schwab 2024-12-23 21:23 ` Alejandro Colomar 2024-12-26 16:00 ` Junio C Hamano 2024-12-26 17:06 ` Alejandro Colomar
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.