converting svn repos with symbolic links

Faheem Mitha faheem at email.unc.edu
Mon Nov 27 12:57:38 CST 2006


Hello everyone,

I believe this is the general mailing list, correct?

Yesterday, I spent some time trying to convert a svn repos to a mercurial 
repos using tailor. This repository only has 18 commits, but some of the 
files are relatively large (like 50M or something), so the diffs were 
relatively big.

The other relevant thing is that I was using symbolic links, since I 
needed to access some of the big files from different places in the 
repository, and added symbolic links in order to do so.

For some reason tailor was hanging excessively during various points in 
this conversion, and took many hours (overnight) to complete, possibly 
because of the symbolic links issue. I didn't really expect it to, 
actually.

Anyway, tailor complained during the conversion that symbolic links were 
not supported, and the resulting repos show the symbolic links thus:

faheem ~/exphome/scratch/corrmodel-sim-hg/allmodels>hg st
! allmodels/pair.result
! allmodels/tp.result
! allmodels/tptt.result
! allmodels/trip.result
! allmodels/uncorr.result

Doing an update does not accomplish anything, since we get

faheem ~/exphome/scratch/corrmodel-sim-hg/allmodels>hg up
5 files updated, 0 files merged, 0 files removed, 0 files unresolved

faheem ~/exphome/scratch/corrmodel-sim-hg/allmodels>hg st
! allmodels/pair.result
! allmodels/tp.result
! allmodels/tptt.result
! allmodels/trip.result
! allmodels/uncorr.result

My question is, if I do an "hg rm" on the symbolic links, would that take 
care of any problems, and the repository continue to work correctly? Or 
not?

Furthermore, I know that mercurial does not support soft (symbolic) links. 
However, does it support hard links, without any extra expenditure in 
space? Ie. if I make a hard link to a file in a repository and then commit 
the hard link, will hg recognise that it is a hard link to that file and 
recreate that hard link in the checkout?

Thanks.                                                           Faheem.


More information about the Mercurial mailing list