view tests/test-convert-svn-encoding.t @ 12765:5eed9ceebd64

merge: when --tool is specified, disable HGMERGE by setting to empty string HGMERGE has different semantics than ui.merge. HGMERGE should hold the name on an executable in your path, or an absolute tool path. As such, it's not safe to simply copy the user's specified --tool value into HGMERGE. Instead, we disable HGMERGE by setting it to an empty string.
author Steve Borho <steve@borho.org>
date Mon, 18 Oct 2010 23:20:14 -0500
parents 5ce3a1eb7f88
children 05fffd665170
line wrap: on
line source


  $ "$TESTDIR/hghave" svn svn-bindings || exit 80

  $ cat > $HGRCPATH <<EOF
  > [extensions]
  > convert = 
  > graphlog =
  > EOF

  $ svnadmin create svn-repo
  $ svnadmin load -q svn-repo < "$TESTDIR/svn/encoding.svndump"

Convert while testing all possible outputs

  $ hg --debug convert svn-repo A-hg
  initializing destination A-hg repository
  reparent to file://*/svn-repo (glob)
  run hg sink pre-conversion action
  scanning source...
  found trunk at 'trunk'
  found tags at 'tags'
  found branches at 'branches'
  found branch branché at 5
  found branch branchée at 6
  scanning: 1 revisions
  reparent to file://*/svn-repo/trunk (glob)
  fetching revision log for "/trunk" from 4 to 0
  parsing revision 4 (2 changes)
  parsing revision 3 (4 changes)
  parsing revision 2 (3 changes)
  parsing revision 1 (3 changes)
  no copyfrom path, don't know what to do.
  '/branches' is not under '/trunk', ignoring
  '/tags' is not under '/trunk', ignoring
  scanning: 2 revisions
  reparent to file://*/svn-repo/branches/branch%C3%A9 (glob)
  fetching revision log for "/branches/branché" from 5 to 0
  parsing revision 5 (1 changes)
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/branches/branch%C3%A9 (glob)
  found parent of branch /branches/branché at 4: /trunk
  scanning: 3 revisions
  reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
  fetching revision log for "/branches/branchée" from 6 to 0
  parsing revision 6 (1 changes)
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
  found parent of branch /branches/branchée at 5: /branches/branché
  scanning: 4 revisions
  scanning: 5 revisions
  scanning: 6 revisions
  sorting...
  converting...
  5 init projA
  source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@1
  converting: 0/6 revisions (0.00%)
  4 hello
  source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@2
  converting: 1/6 revisions (16.67%)
  reparent to file://*/svn-repo/trunk (glob)
  scanning paths: /trunk/à 0/3 (0.00%)
  scanning paths: /trunk/à/é 1/3 (33.33%)
  scanning paths: /trunk/é 2/3 (66.67%)
  à/é
  getting files: à/é 1/2 (50.00%)
  é
  getting files: é 2/2 (100.00%)
  3 copy files
  source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@3
  converting: 2/6 revisions (33.33%)
  scanning paths: /trunk/à 0/4 (0.00%)
  gone from -1
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/trunk (glob)
  scanning paths: /trunk/è 1/4 (25.00%)
  copied to è from é@2
  scanning paths: /trunk/é 2/4 (50.00%)
  gone from -1
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/trunk (glob)
  scanning paths: /trunk/ù 3/4 (75.00%)
  mark /trunk/ù came from à:2
  à/é
  getting files: à/é 1/4 (25.00%)
  è
  getting files: è 2/4 (50.00%)
   è: copy é:6b67ccefd5ce6de77e7ead4f5292843a0255329f
  é
  getting files: é 3/4 (75.00%)
  ù/é
  getting files: ù/é 4/4 (100.00%)
   ù/é: copy à/é:a9092a3d84a37b9993b5c73576f6de29b7ea50f6
  2 remove files
  source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@4
  converting: 3/6 revisions (50.00%)
  scanning paths: /trunk/è 0/2 (0.00%)
  gone from -1
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/trunk (glob)
  scanning paths: /trunk/ù 1/2 (50.00%)
  gone from -1
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/trunk (glob)
  è
  getting files: è 1/2 (50.00%)
  ù/é
  getting files: ù/é 2/2 (100.00%)
  1 branch to branch?
  source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/branches/branch?@5
  converting: 4/6 revisions (66.67%)
  reparent to file://*/svn-repo/branches/branch%C3%A9 (glob)
  scanning paths: /branches/branché 0/1 (0.00%)
  0 branch to branch?e
  source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/branches/branch?e@6
  converting: 5/6 revisions (83.33%)
  reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
  scanning paths: /branches/branchée 0/1 (0.00%)
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
  reparent to file://*/svn-repo (glob)
  reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
  updating tags
  .hgtags
  run hg sink post-conversion action
  $ cd A-hg
  $ hg up
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved

Check tags are in UTF-8

  $ python -c "print '\n'.join([('%r' % l) for l in file('.hgtags', 'rb').readlines()])"
  '221c3fdaf24df5f14c0a64c597581e2eacfb47bb branch\xc3\xa9e\n'
  '7a40952c2db29cf00d9e31df3749e98d8a4bdcbf branch\xc3\xa9\n'

  $ cd ..