The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 2,093 other followers

Posts Tagged ‘command line tools’

Just filed Mercurial Bug 4043 – HG 2.7.x cannot convert a local file based SVN repository with db format 6 (works fine with db format 4)

Posted by jpluimers on 2013/09/26

Converting SVN repositories to HG isn’t always as straight forward as you want to.

GExperts and GExperts-Formatter succeeded a while ago, but DSharp (a very nice library by Stefan Glienke) failed at first.

It so happens that in the mean time, I switched VM’s to Delphi XE5 with a fresh list of VCS installs:

That was the cause: this new setup caused a new SVN db format for local synced file based SVN repositories that HG cannot not cope with.

It worked fine when I went back to a VM that had this config:

So I won’t forget to keep an eye on progress, I filed this Bug 4043 – HG 2.7.x cannot convert a local file based SVN repository with db format 6 (works fine with db format 4):

HG 2.6.x and 2.7.x cannot convert SVN repositories with db format 6 that SVN 1.8.x defaults to.

(SVN db format list: see http://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure)

This works fine when performing svnadmin/svnsync on SVN 1.7.5 (they will get a db format 4), but fails when performing svnadmin/svnsync on SVN 1.8.x (they will get a db format 6)

I’ve tried the matrix of SVN versions 1.7.5, 1.8.1 and 1.8.2 versus HG 2.6.2, 2.7 and 2.7. HG consistently fails with db format 6.

The error message you get is this:

file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Subversion repository

from the command here:

C:\Users\developer\Versioned>hg convert --verbose file:///C:/Users/developer/Versioned/DSharp.svn DSharp
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a CVS checkout
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Git repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Subversion repository
file:///C:/Users/developer/Versioned/DSharp.svn is not a local Mercurial repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a darcs repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a monotone repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a GNU Arch repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Bazaar repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a P4 repository
abort: file:///C:/Users/developer/Versioned/DSharp.svn: missing or unsupported repository

Two of my tries that shows success/failure and got me in the right direction:

Success:

C:\Users\Developer\Versioned>svnadmin create DSharp.svn
C:\Users\Developer\Versioned>echo exit 0 1>DSharp.svn\hooks\pre-revprop-change.bat
C:\Users\Developer\Versioned>svnsync init file:///C:/Users/Developer/Versioned/DSharp.svn http://delphisorcery.googlecode.com/svn
Copied properties for revision 0.
C:\Users\Developer\Versioned>svnsync sync file:///C:/Users/Developer/Versioned/DSharp.svn http://delphisorcery.googlecode.com/svn
Committed revision 1.
Copied properties for revision 1.
Transmitting file data ……….
Committed revision 630.
Copied properties for revision 630.
C:\Users\Developer\Versioned>hg clone https://bitbucket.org/jeroenp/dsharp DSharp.hg
no changes found
updating to branch default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
C:\Users\Developer\Versioned>hg convert file:///C:/Users/Developer/Versioned/DSharp.svn DSharp.hg
scanning source…
sorting…
converting…
628 Initial directory structure.
627 First version
1 – refactoring for yield support (renamed DSharp.Collections.Yield.pas to DSharp.Collections.Iterators.pas)
0 – added XE4 packages
C:\Users\Developer\Versioned>svn –version
svn, version 1.7.5 (r1336830)
compiled May 11 2012, 02:21:17
Copyright (C) 2012 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository access (RA) modules are available:
* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
– handles 'http' scheme
– handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
– with Cyrus SASL authentication
– handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
– handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
– handles 'http' scheme
– handles 'https' scheme
C:\Users\Developer\Versioned>hg –version
Mercurial Distributed SCM (version 2.6.2)
(see http://mercurial.selenic.com for more information)
Copyright (C) 2005-2012 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
C:\Users\Developer\Versioned>type DSharp.svn\format
5
C:\Users\Developer\Versioned>type DSharp.svn\db\format
4
layout sharded 1000
C:\Users\Developer\Versioned>type DSharp.svn\db\fs-type
fsfs
C:\Users\Developer\Versioned>type DSharp.svn\db\min-unpacked-rev
0
C:\Users\Developer\Versioned>dir DSharp.svn DSharp.svn\db
Volume in drive C has no label.
Volume Serial Number is 4665-BAA1
Directory of C:\Users\Developer\Versioned\DSharp.svn
09/26/2013 08:47 AM <DIR> .
09/26/2013 08:47 AM <DIR> ..
09/26/2013 08:47 AM <DIR> conf
09/26/2013 08:55 AM <DIR> db
09/26/2013 08:47 AM 2 format
09/26/2013 08:47 AM <DIR> hooks
09/26/2013 08:47 AM <DIR> locks
09/26/2013 08:47 AM 234 README.txt
2 File(s) 236 bytes
Directory of C:\Users\Developer\Versioned\DSharp.svn\db
09/26/2013 08:55 AM <DIR> .
09/26/2013 08:55 AM <DIR> ..
09/26/2013 08:55 AM 4 current
09/26/2013 08:47 AM 22 format
09/26/2013 08:47 AM 5 fs-type
09/26/2013 08:47 AM 1,997 fsfs.conf
09/26/2013 08:47 AM 2 min-unpacked-rev
09/26/2013 08:55 AM 235,520 rep-cache.db
09/26/2013 08:47 AM <DIR> revprops
09/26/2013 08:47 AM <DIR> revs
09/26/2013 08:55 AM <DIR> transactions
09/26/2013 08:55 AM 3 txn-current
09/26/2013 08:47 AM 0 txn-current-lock
09/26/2013 08:55 AM <DIR> txn-protorevs
09/26/2013 08:47 AM 37 uuid
09/26/2013 08:47 AM 0 write-lock
10 File(s) 237,590 bytes
6 Dir(s) 2,377,388,032 bytes free
C:\Users\Developer\Versioned>

Failure:

C:\Users\developer\Versioned>svnadmin create DSharp.svn
C:\Users\developer\Versioned>echo exit 0 1>DSharp.svn\hooks\pre-revprop-change.bat
C:\Users\developer\Versioned>svnsync init file:///C:/Users/developer/Versioned/DSharp.svn http://delphisorcery.googlecode.com/svn
Copied properties for revision 0.
C:\Users\developer\Versioned>svnsync sync file:///C:/Users/developer/Versioned/DSharp.svn http://delphisorcery.googlecode.com/svn
Committed revision 1.
Copied properties for revision 1.
Transmitting file data ……….
Committed revision 630.
Copied properties for revision 630.
C:\Users\developer\Versioned>hg clone https://bitbucket.org/jeroenp/dsharp DSharp.hg
no changes found
updating to branch default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
C:\Users\developer\Versioned>hg convert –verbose file:///C:/Users/developer/Versioned/DSharp.svn DSharp
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a CVS checkout
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Git repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Subversion repository
file:///C:/Users/developer/Versioned/DSharp.svn is not a local Mercurial repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a darcs repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a monotone repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a GNU Arch repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a Bazaar repository
file:///C:/Users/developer/Versioned/DSharp.svn does not look like a P4 repository
abort: file:///C:/Users/developer/Versioned/DSharp.svn: missing or unsupported repository
C:\Users\developer\Versioned>svn –version
svn, version 1.8.1 (r1503906)
compiled Jul 22 2013, 19:58:17 on x86-microsoft-windows
Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository access (RA) modules are available:
* ra_svn : Module for accessing a repository using the svn network protocol.
– with Cyrus SASL authentication
– handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
– handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
– handles 'http' scheme
– handles 'https' scheme
C:\Users\developer\Versioned>hg –version
Mercurial Distributed SCM (version 2.7)
(see http://mercurial.selenic.com for more information)
Copyright (C) 2005-2013 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
C:\Users\developer\Versioned>type DSharp.svn\format
5
C:\Users\developer\Versioned>type DSharp.svn\db\format
6
layout sharded 1000
C:\Users\developer\Versioned>type DSharp.svn\db\fs-type
fsfs
C:\Users\developer\Versioned>type DSharp.svn\db\min-unpacked-rev
0
C:\Users\developer\Versioned>dir DSharp.svn DSharp.svn\db
Volume in drive C has no label.
Volume Serial Number is A855-3C2D
Directory of C:\Users\developer\Versioned\DSharp.svn
09/25/2013 09:52 PM <DIR> .
09/25/2013 09:52 PM <DIR> ..
09/25/2013 07:38 PM <DIR> conf
09/25/2013 07:44 PM <DIR> db
09/25/2013 07:38 PM 2 format
09/25/2013 07:38 PM <DIR> hooks
09/25/2013 07:38 PM <DIR> locks
09/25/2013 07:38 PM 251 README.txt
2 File(s) 253 bytes
Directory of C:\Users\developer\Versioned\DSharp.svn\db
09/25/2013 07:44 PM <DIR> .
09/25/2013 07:44 PM <DIR> ..
09/25/2013 07:44 PM 4 current
09/25/2013 07:38 PM 22 format
09/25/2013 07:38 PM 5 fs-type
09/25/2013 07:38 PM 6,963 fsfs.conf
09/25/2013 07:38 PM 2 min-unpacked-rev
09/25/2013 07:44 PM 232,448 rep-cache.db
09/25/2013 07:38 PM <DIR> revprops
09/25/2013 07:38 PM <DIR> revs
09/25/2013 07:44 PM <DIR> transactions
09/25/2013 07:44 PM 3 txn-current
09/25/2013 07:38 PM 0 txn-current-lock
09/25/2013 07:44 PM <DIR> txn-protorevs
09/25/2013 07:38 PM 37 uuid
09/25/2013 07:38 PM 0 write-lock
10 File(s) 239,484 bytes

.

–jeroen

via: Bug 4043 – HG 2.7.x cannot convert a local file based SVN repository with db format 6 (works fine with db format 4).

Posted in Delphi, Development, DVCS - Distributed Version Control, Mercurial/Hg, Software Development, Source Code Management, Subversion/SVN | Tagged: , , | 1 Comment »

 
%d bloggers like this: