Re: [PATCH] show_date(): fix relative dates
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jan 21, 2007, 01:34 UTC
- Message-ID
- <Pine.LNX.4.63.0701210219400.22628@wbgn013.biozentrum.uni-wuerzburg.de>
- In-Reply-To
- <7v3b656vq5.fsf@assigned-by-dhcp.cox.net>
Hi,
On Sat, 20 Jan 2007, Junio C Hamano wrote:
> I noticed this and have a different solution in the show-branch > --reflog code (it does not pass tz).
Actually, you do pass tz, but with a fixed value of 0. But this is only a workaround.
The thing is, if you pass the same timestamp with a different timezone, absolute (non-relative) date will show the same time, i.e. 22:24 +0000 is the same as 23:24 +0100.
Now I expect the same of relative mode, only that the timezone does not matter for relative mode _at all_.
As you can see in my patch for --walk-reflogs (to honour --relative-date), it can make sense to pass make the choice whether to show a relative or an absolute date a runtime option (where you don't want to set tz to 0 depending on relativa_date).
I guess nobody realized that "git log --relative-date" does not work correctly (for all commits which were not committed in tz +0000), is due to its narrowspread use, or that it is not all that obviously wrong.
However, I was very surprised when "git log --walk-reflogs --relative-date" showed me "in the future" for my last commits.
If you don't want to think it through, please just verify my reasoning by compiling the script I gave with the patch both before and after applying the patch. The absolute dates _and_ the relative dates should be all the same, but the relative date with non-zero timezone is displayed as "in the future" withouth the patch.
Ciao, Dscho