From: "Pablo Sabater" <pabloosabaterr@gmail.com>
To: "hardikxk" <hardikxk@gmail.com>, <git@vger.kernel.org>
Subject: Re: [PATCH 1/1] Extract only the message body from git commit.
Date: Wed, 22 Jul 2026 14:23:12 +0200 [thread overview]
Message-ID: <DK53I00U9FJS.2MUNWC5000IZ5@gmail.com> (raw)
In-Reply-To: <20260722083836.744338-2-hardikxk@gmail.com>
On Wed Jul 22, 2026 at 10:38 AM CEST, hardikxk wrote:
> The patch fixes the `extractLogMessageFromGitCommit` function to skip all the metada of the commit object and only return back the message body.
nit: wrap this long line to a max of ~72 columns.
nit: s/metada/metadata/
>
> Previously the function would return the entire data of the objects
> including authors tree and SHAs. This patch fixes that to skip over all
> that and just return the body of the log message.
nit: I think this can be written more clearly. Let's use present tense
and state things affirmatively:
extractLogMessageFromGitCommit() returns the entire object data,
including authors, tree and SHAs.
Make it return only the log message body.
Don't take this suggestion literally, as we find below that this log
does not match reality.
You may find Documentation/CodingGuidelines and
Documentation/SubmittingPatches interesting.
>
> Signed-off-by: hardikxk <hardikxk@gmail.com>
> ---
> git-p4.py | 12 +++++++++---
> 1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/git-p4.py b/git-p4.py
> index c0ca7be..589efcd 100755
> --- a/git-p4.py
> +++ b/git-p4.py
> @@ -1003,12 +1003,18 @@ def branchExists(ref):
> def extractLogMessageFromGitCommit(commit):
> logMessage = ""
>
> - # fixme: title is first line of commit, not 1st paragraph.
> + foundNewLine = False
> foundTitle = False
> for log in read_pipe_lines(["git", "cat-file", "commit", commit]):
> - if not foundTitle:
> + if not foundNewLine:
> + # skip anything that is not the commit message
> if len(log) == 1:
> - foundTitle = True
> + foundNewLine = True
> + continue
> +
> + # everything from here is the commit message
> + if not foundTitle:
> + foundTitle = True
> continue
>
> logMessage += log
Reading the code, this doesn't seem to do what the log says it does.
Testing it against what it did before this patch:
First we need to do a bit of investigation, but we end up finding
that the commit that introduced this '# fixme' was:
b016d39756 (Robustness fixes for pipes, 2007-05-23)
I couldn't find a thread about this commit.
*Note that the output does not have line breaks; I'm adding them for
readability*.
previously:
'Extract only the message body from git commit.\n\nThe patch fixes the
`extractLogMessageFromGitCommit` function to skip all the metada of the
commit object and only return back the message body.\n\nPreviously the
function would return the entire data of the objects\nincluding authors
tree and SHAs. This patch fixes that to skip over all\nthat and just
return the body of the log message.\n\nSigned-off-by: hardikxk <hardikxk@gmail.com>\n'
after the patch:
'\nThe patch fixes the `extractLogMessageFromGitCommit` function to skip
all the metada of the commit object and only return back the message
body.\n\nPreviously the function would return the entire data of the
objects\nincluding authors tree and SHAs. This patch fixes that to skip
over all\nthat and just return the body of the log message.
\n\nSigned-off-by: hardikxk <hardikxk@gmail.com>\n'
We can see that the previous output only shows the commit log, title
+ body. There were no SHAs, tree, etc., the opposite of what this
patch's log claimed.
What this patch actually does is drop the commit subject.
Is this what the '# fixme' meant? I'm making assumptions here, since I
couldn't find a thread to be sure why it was added, but I think it is
either about the loop stopping at the blank line rather than at the title
itself, or a warning that a title is just one line and not a paragraph.
Either way, this patch does not address the '# fixme' correctly.
Before continuing, I think we should try to understand what the '# fixme'
meant in the first place.
Regards,
Pablo.
next prev parent reply other threads:[~2026-07-22 12:23 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-22 8:38 [PATCH 0/1] Extract only the message log body from git commit hardikxk
2026-07-22 8:38 ` [PATCH 1/1] Extract only the message " hardikxk
2026-07-22 12:23 ` Pablo Sabater [this message]
2026-07-22 13:42 ` Hardik Kumar
2026-07-22 12:38 ` [PATCH 0/1] Extract only the message log " Pablo Sabater
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DK53I00U9FJS.2MUNWC5000IZ5@gmail.com \
--to=pabloosabaterr@gmail.com \
--cc=git@vger.kernel.org \
--cc=hardikxk@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.