Sam, could you clarify what you want to do regarding the 2 trivial errors in the conversion? The tag for change 42 is missing, Change 82 has a form of off-by-one error. Full message appended. Also, please could the git conversion record the corrected change descriptions for changes 33866, 30738 and 30737? Otherwise wrongness will remain baked in history forever. Nicholas Clark On Fri, Nov 21, 2008 at 10:35:34PM +0000, Nicholas Clark wrote: > On Tue, Nov 18, 2008 at 06:20:01PM +1300, Sam Vilain wrote: > > > * Change 42 (maint-5.004/perl): > > > > - Change 42 was the commit that introduced perl-5.004_01 to > > Perforce. Its parent was Change 32. However, there was a fine > > grained changelog for this, so it was expanded to approximately 47 > > commits using the "Timinator" script. > > > > => There was a tag in the 'soyesterday' release of the Perl history > > so that 'git log --all --grep=@42\\\>' will show up a revision with > > @42 on it. > > I don't find revisions 42 anywhere in the log descriptions. > > $ git log --all --grep=@42 | grep 42$ | grep raw > p4raw-id: //depot/perl@4242 > > > > - Change 82 was where the 5.004_03 revision was checked into > > Perforce. The Timinator extracted 29 commits from that change; it > > was recorded as a cross-merge from the surrogate Change 81 and the > > actual commit tagged with perl-5.004_03. > > It seems that there's a single file error for what you have tagged as > change 82. Output from my script running git, p4 sync, and diff: > > Previous HEAD position was d9a4640... Maintenance 5.004_02 changes > HEAD is now at a6064bc... Maintenance 5.004_03 changes > /home/nick/p4perl/maint-5.004/perl/...@82 - file(s) up-to-date. > Only in /home/nick/Perl/perl: .git > Only in /home/nick/p4perl/maint-5.004/perl/win32/bin: search.bat > Fail for 82 at ./syncer line 107, <$fh> line 2. > > Looks like that file had a long and exciting life: > > $ p4 changes /home/nick/p4perl/maint-5.004/perl/win32/bin/search.bat > Change 83 on 1997/09/30 by TimBunce@ig.co.uk 'Maintenance 5.004_03 changes (a' > Change 32 on 1997/06/24 by mbeattie@localhost 'Branch integration of maint-5.0' > > and that the git conversion deletes it one revision too early. > It is possible to graft a correction in? > > > * Change 157 (oneperl): > > > > - See the note on change 162. This manual fixup was possibly > > botched previously; it's clean now, though. > > Ah, you mean this: > > $ git log --all --grep=@158$ > commit bead90fe6f0cb51bb46b63e444c6003c378a1a5f > Merge: e22a775... f81e733... > Author: Nick Ing-Simmons <nik@tiuk.ti.com> > Date: Sun Oct 19 14:42:16 1997 +0000 > > [integrate from //depot/perl] > > Subject: Dubious merge of oneperl's variable and struct thread > p4raw-id: //depot/oneperl@162 > > Subject: integrate all but perl.h/thread.h > p4raw-id: //depot/oneperl@161 > > Subject: Integrate rest of sub-dirs into oneperl > p4raw-id: //depot/oneperl@160 > > Subject: Integrate (accept) t and win32 into oneperl > p4raw-id: //depot/oneperl@159 > > Subject: Integrate lib/... into oneperl > p4raw-id: //depot/oneperl@158 > > [note: these five changes were essentially one long merge, > committed piecemeal] > > > Basically you have one git commit that corresponds to state-of-the-perforce > world at 162? A change that jumps directly from //depot/oneperl/...@157 > to //depot/oneperl/...@162? > > If so, no wonder my checking program thinks that 158 onwards are messed up - > it sees the 'p4raw-id: //depot/oneperl@158' and thinks that this git revision > corresponds to world at 158. > > > I've not tested the macperl branches yet. > > Everything else is perfect (to the point where git's history runs out because > the perforce repository is a moving target) > > Thanks for your amazing efforts on this. > > Nicholas Clark >Thread Previous | Thread Next