git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Antw: Bug in 2.26.2 regading "git diff --cached"?

From
UWUlrich Windl <ulrich.windl@rz.uni-regensburg.de>
Date
Apr 20, 2022, 11:31 UTC
Message-ID
<625FEF14020000A100049791@gwsmtp.uni-regensburg.de>
In-Reply-To
<625FED5E020000A10004978D@gwsmtp.uni-regensburg.de>
Hi again!

It seems the issue was caused by the specific edit of the hunk. I cannot remember that there was an error message, but I reset the adds again and re-edited the hunk. This time the "diff --cached" showed the change for both files.

Regards, Ulrich

>>> Ulrich Windl schrieb am 20.04.2022 um 13:24 in Nachricht <625FED5E.C7A : 161 :
60728>:
Show 79 quoted lines
> Hi!
> 
> I just added interactively one hunk and committed it, just to find out that 
> I wanted to include another hunk (that would need editing).
> So I reset to the previous commit, added the two correct hunks again, and 
> then did "git diff --cached".
> I was surprised to find only one of the two hunks I've added in the diff.
> The likely reason is that one of thoise hunks had been committed, but that 
> commit was reset.
> 
> Some details:
> (reflog)
> ebd6e6c (HEAD -> rfc-5424-message) HEAD@{0}: reset: moving to 
> ebd6e6c8af5b9eaa809a114ee6a972114b3f6a86
> 6997ce5 HEAD@{1}: commit: Remove call to Class::_fake_load(__PACKAGE__)
> ebd6e6c (HEAD -> rfc-5424-message) HEAD@{2}: commit: Fix RE_day in 
> lib/RFC_5424_Message.pm
> 
> So 6997ce5 was the incomplete commit.
> 
> > git status
> On branch rfc-5424-message
> Changes to be committed:
>   (use "git restore --staged <file>..." to unstage)
>         modified:   lib/Message.pm
>         modified:   lib/UnknownMessage.pm
> 
> Changes not staged for commit:
>   (use "git add <file>..." to update what will be committed)
>   (use "git restore <file>..." to discard changes in working directory)
>         modified:   lib/Message.pm
>         modified:   lib/MessageLogFormat.pm
>         modified:   lib/RFC_3164_Message.pm
>         modified:   lib/RFC_5424_Message.pm
>         modified:   syslogd.pl
> 
> So there are two files with changes to commit.
> "git diff --cached -M" outputs only one chink, however:
> diff --git a/lib/UnknownMessage.pm b/lib/UnknownMessage.pm
> index eef8f25..d0246ef 100644
> --- a/lib/UnknownMessage.pm
> +++ b/lib/UnknownMessage.pm
> @@ -114,8 +114,4 @@ sub parse_OK($$$$)
>      return defined($class->new_parsed($lt, $peer_addr, $packet, 1));
>  }
> 
> -BEGIN {
> -    Class::_fake_load(__PACKAGE__);    # Tell Perl module is loaded already
> -}
> -
>  1;
> ---------------
> Interestingly the hunk shown is the one that was in the bad commit; the 
> edited commit is missing.
> 
> The missing hunk should look like this:
> ---
> diff --git a/lib/Message.pm b/lib/Message.pm
> index 2c60960..abd3e8e 100644
> --- a/lib/Message.pm
> +++ b/lib/Message.pm
> @@ -147,8 +147,19 @@ sub parse_OK($$$$)
>      return undef;
>  }
> 
> -BEGIN {
> -    Class::_fake_load(__PACKAGE__);    # Tell Perl module is loaded already
> -}
> 
>  1;
> ---
> 
> Now is that a bug, or is it a "pilot error"?
> 
> Regards,
> Ulrich
> 
> 
> 
Previous: Ulrich Windl
Message 2 of 2 in “Bug in 2.26.2 regading "git diff --cached"?”
  1. Ulrich WindlApr 20, 2022
  2. Antw: Bug in 2.26.2 regading "git diff --cached"?Ulrich Windl, Apr 20, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.