From: Junio C Hamano <gitster@pobox.com>
To: bdowning@lavos.net (Brian Downing)
Cc: Steffen Prohaska <prohaska@zib.de>,
Git Mailing List <git@vger.kernel.org>
Subject: Re: Corrupted (?) commit 6e6db85e confusing gitk
Date: Sun, 02 Dec 2007 12:48:22 -0800 [thread overview]
Message-ID: <7vmyssvn55.fsf@gitster.siamese.dyndns.org> (raw)
In-Reply-To: <20071202193918.GQ6212@lavos.net> (Brian Downing's message of "Sun, 2 Dec 2007 13:39:18 -0600")
bdowning@lavos.net (Brian Downing) writes:
> It looks like the "guilty" commit that allowed this behavior was:
>
> commit 13208572fbe8838fd8835548d7502202d1f7b21d
> Author: Johannes Schindelin <Johannes.Schindelin@gmx.de>
> Date: Sun Nov 11 17:35:58 2007 +0000
>
> builtin-commit: fix --signoff
>
> The Signed-off-by: line contained a spurious timestamp. The reason was
> a call to git_committer_info(1), which automatically added the
> timestamp.
>
> Instead, fmt_ident() was taught to interpret an empty string for the
> date (as opposed to NULL, which still triggers the default behavior)
> as "do not bother with the timestamp", and builtin-commit.c uses it.
>
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> Signed-off-by: Junio C Hamano <gitster@pobox.com>
>
> With the above, something like:
>
> echo msg | GIT_AUTHOR_DATE='' git commit-tree sha1
>
> will produce a broken commit without a timestamp, since fmt_ident is
> also used for the committer and author lines.
>
> Personally, I think if the date_str is not NULL, it should die() on
> anything that can't successfully be parsed as a date, rather than simply
> falling back to the current time. But maybe that's a bit extreme.
Yeah, that change does look like a hack now we look at it again. It
would have been much cleaner to make the caller accept the default
behaviour of fmt_ident() and strip out the part it does not want from
the result. That way, the damage would have been much contained.
The next issue would be to find who could pass an empty GIT_AUTHOR_DATE
without noticing...
next prev parent reply other threads:[~2007-12-02 20:48 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-02 16:06 Corrupted (?) commit 6e6db85e confusing gitk Steffen Prohaska
2007-12-02 16:12 ` Wincent Colaiuta
2007-12-02 16:36 ` [PATCH] gitk: Add workaround to handle corrupted author date Steffen Prohaska
2007-12-02 18:53 ` Corrupted (?) commit 6e6db85e confusing gitk Junio C Hamano
2007-12-02 19:39 ` Brian Downing
2007-12-02 20:34 ` Linus Torvalds
2007-12-02 20:48 ` Junio C Hamano [this message]
2007-12-02 21:25 ` Linus Torvalds
2007-12-02 21:47 ` Junio C Hamano
2007-12-02 22:43 ` Linus Torvalds
2007-12-02 21:43 ` Fix --signoff in builtin-commit differently Junio C Hamano
2007-12-02 22:31 ` Johannes Schindelin
2007-12-02 22:59 ` Corrupted (?) commit 6e6db85e confusing gitk Michael Gebetsroither
2007-12-02 23:05 ` Junio C Hamano
2007-12-02 21:34 ` Johannes Schindelin
2007-12-02 21:49 ` Linus Torvalds
2007-12-02 22:36 ` Junio C Hamano
2007-12-02 22:14 ` Junio C Hamano
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=7vmyssvn55.fsf@gitster.siamese.dyndns.org \
--to=gitster@pobox.com \
--cc=bdowning@lavos.net \
--cc=git@vger.kernel.org \
--cc=prohaska@zib.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).