hg convert failing on a repo with subrepos
Svein Seldal
sveinse at seldal.com
Tue May 8 07:57:29 UTC 2018
The 2018-05-08 06:22, skrev Matt Harbison wrote:
>> Attempt 1) With empty file.map, the convertion fails with: "abort:
>> data/.hgsubstate.i at 303030303030: no node!"
>>
>> Attempt 2) I don't really need the hg subrepos functionality intact,
>> but I must retain the revision controlled files in order to recreate
>> the specific subrepos manually if needed. I then rename the hgsub
>> files:
>>
>> rename .hgsub .old.hgsub
>> rename .hgsubstate .old.hgsubstate
>>
>> Then it fails even earlier, with "abort: unable to convert merge
>> commit since target parents do not merge cleanly". The file listed
>> file failing has no relationship with .hgsub.
>
> I've seen weirdness with file map too. I thought it was file drop
> related, but maybe it was a rename issue.
>
> What are you trying to do with this conversion?
We're migrating our repos from in-house servers to bitbucket. So need to
convert our largefile-enabled repo to an non-largefile repo. This
function needs hg convert to un-largefile the repo. Secondly, we've
realized that subrepos was a mistake, but I cannot and must not undo the
linking to the subrepos. So we must retain the subrepo information
stored, but it can well and good be just in text files not automatically
recognized by hg.
>> What can I do to fix or debug this issue? hg verify on a checked out
>> clone does not complain on the repo, except for some old subrepos that
>> aren't available any more. I'm running hg 4.5.3 from Ubuntu 18.04.
>
> I'm not sure if the missing subrepos would be a problem. You may end
> up having to write an extension that tweaks the default convert
> behavior.
>
> https://www.mercurial-scm.org/wiki/ConvertExtension#Customization
Yes, I'm prepared that this will be necessary, but I'm stuck at what hg
convert is failing on. E.g. what asset I need to modify to get hg
convert pass.
Best regards,
Svein
More information about the Mercurial
mailing list