It appears that the date command doesn't know how to substract time and always adds it. The time zone fixup has to be done separately otherwise time displayed in a negative time zone is wrong.
Signed-off-by: Nicolas Pitre <[EMAIL PROTECTED]> Index: gitlog.sh =================================================================== --- 2a91836b5814ffacb1fde000dfb1e55457761c88/gitlog.sh (mode:100755 sha1:53b55be31b38b2ab88434cf1ac0a868700e64525) +++ uncommitted/gitlog.sh (mode:100775) @@ -56,8 +56,9 @@ date=(${rest#*> }) sec=${date[0]}; tz=${date[1]} - dtz=${tz/+/+ }; dtz=${dtz/-/- } - pdate="$(date -Rud "1970-01-01 UTC + $sec sec $dtz" 2>/dev/null)" + dtz=${tz/+/} + lsec=$(expr $dtz / 100 \* 3600 + $dtz % 100 \* 60 + $sec) + pdate="$(date -Rud "1970-01-01 UTC + $lsec sec" 2>/dev/null)" if [ "$pdate" ]; then echo -n $color$key $rest | sed "s/>.*/> ${pdate/+0000/$tz}/" echo $coldefault - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html