Mercurial deployment for a organization
Milind Shah
milind_shah at calypso.com
Tue Aug 10 18:34:34 UTC 2010
On Mon, Aug 9, 2010 at 3:21 PM, Milind Shah <milind_shah at calypso.com> wrote:
> Thanks for your feedback. I tried following your steps and have completed the conversion. After the migration, while running verify-cvs2svn, I found lot of differences in binary files. I am not sure if I was supposed to handle binary files with some special flag. Also, when I did the test migration couple of months ago with Hg 1.5.4 and related version cvs2svn, I did not have this problem, so, please let me know if you think something has been done differently in 1.6.2 or head of cvs2svn.
The most likely culprits are 1) end-of-line (\n vs \n\r) and 2)
keyword expansion. Did you look into those binary files to see what
the differences are? That would help a lot.
I'm pretty sure that cvs2svn (and therefore my cvs2hg) is neutral on
the line ending question: what you have in CVS is what you get in
svn/git/hg/whatever. I know that I had to write custom code to
normalize line endings as part of our cvs->hg conversion. However, it
*does* tend to expand CVS keywords, which is annoying because 1) it
breaks verify-cvs2svn and 2) it means your shiny new Mercurial
repository is littered with evidence of its CVS past. I patched
cvs2svn to disable keyword expansion, but I had to drop that patch in
a recent merge with upstream. So that might be your problem.
Also, please specify exactly what version of cvs2svn you are talking
about. I presume you are using my fork with direct hg output. If so,
please state which changeset of that repo you are running.
Greg
Hi,
I think it’s the second option, keyword expansion. While comparing the binaries, I found that the cvs checkout of those binaries do have expanded keywords even though I checked out with -kk flag, and diff on binary looks like
diff -ar hg/xsdlib.jar cvs/xsdlib.jar
915c915
< # @(#)$Id$
---
> # @(#)$Id: Messages.properties,v 1.10 2001/05/15 17:48:27 Exp $
1013c1013
< # @(#)$Id$
---
> # @(#)$Id: Messages_ja.properties,v 1.2 2001/06/07 20:57:02 Exp $
Which makes me believe that cvs2svn is re-writing binaries to ignore keyword expansion. But, in this case binaries are supposed to be as is.
The version of cvs2svn I am using is
changeset: 232:213e77a8201f
tag: tip
user: Greg Ward <greg at gerg.ca>
date: Mon Aug 02 21:14:40 2010 -0400
summary: Add instructions for using on Windows.
More information about the Mercurial
mailing list