Subject: Re: mercurial to git

From: Theodore Tso <[email-masked]>
Date: Thu, 15 Mar 2007 10:12:27 -0400

On Thu, Mar 15, 2007 at 10:19:13AM +0000, Rocco Rutte wrote:
> I failed to send a response to the list and it went Theodore privately 
> only, sorry. I merged hg2git into fast-export.git at repo.or.cz and 
> named it 'hg-fast-export' to match with the other importers there. It 
> now can parse Signed-off-by lines and supports author maps (as 
> git-cvsimport and git-svnimport do, same syntax).

BTW, there are a number of places where the old name (hg2git) is still
being used for filenames, et.al, because $PFX is still being set to
hg2git.  

> For which changesets exactly? The script only attempts to write out the 
> 'author' command if -s (for parsing signed-off-by) is given. But for 
> both commands the time information written out are identical and are 
> exactly what hg gives us. So the bug must be elsewhere.

All of them.  :-)

Upon doing more investigation, the failure case seems to be if -A is
specified but NOT -s.  Comare:

(Generated using: hg-fast-export.sh -A ../e2fsprogs.authors -r ../e2fsprogs)
commit b584b9c57ecbbeef91970ca2924d66662029ab29
Author: Theodore Ts'o <[email-masked]>
Date:   Thu Jan 1 00:00:00 1970 +0000  <=============

with

(Generated using: hg-fast-export.sh -s -A ../e2fsprogs.authors -r ../e2fsprogs)
commit 9e9a5867e4d4985bde6d6be072efb96e901e08cc
Author: Theodore Ts'o <[email-masked]>
Date:   Wed Mar 7 08:09:10 2007 -0500  <=============

The date seems to be correctly generated using

	hg-fast-export.sh -s -A ../e2fsprogs.authors -r ../e2fsprogs
	hg-fast-export.sh -s -r ../e2fsprogs
	hg-fast-export.sh -r ../e2fsprogs

It seems to be this combination of options:

	hg-fast-export.sh -A ../e2fsprogs.authors -r ../e2fsprogs

Where all of the dates end up being Jan 1, 1970.

Regards,

						- Ted