matthewb
matthewb

Reputation: 3476

Unknown parent error in Mercurial

I am getting a error that is preventing me to pull, even force pull.

hg command error:
transaction abort!
rollback completed
abort: data/assets/images/skins/file/skin.jpg.i@0727c4489edc: unknown parent!

Is there anyway to remove, revert or fix just this file, its not even used, and it's preventing any pulling.

UPDATE After Running hg verify

checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
 assets/images/skins/hein/Heineken-skin.jpg@236: 0727c4489edc in manifests not found
 assets/images/skins/vw/VW_10_Revive_Website_Takeover.jpg@153: 877324921450 in manifests not found
 assets/images/skins/vw/VW_10_Revive_Website_Takeover.jpg@171: 45e8aee1c524 in manifests not found
warning: orphan revlog 'data/assets/images/skins/hein/Heineken-skin.jpg.d'
warning: orphan revlog 'data/assets/images/skins/vw/VW_10_Revive_Website_Takeover.jpg.d'
1268 files, 256 changesets, 2101 total revisions
2 warnings encountered!
3 integrity errors encountered!

(first damaged changeset appears to be 153)

Seems to be 2 images, How can I fix this?

Upvotes: 20

Views: 10596

Answers (3)

adejones
adejones

Reputation: 1060

I had a very similar problem with Mercurial reporting an unknown parent but instead was subsequently throwing a ValueError in dirstate

Running hg verify appeared to complete successfully but did not fix the issue.

Reading the contents of the dirstate file, it contained strings referencing a different and unrelated project so to me it was corrupt, the resolution was to copy the backup dirstate file over the top of the corrupt dirstate, i.e., (Windows flavour command)

ren .hg\dirstate .hg\dirstate.corrupt
copy .hg\undo.backup.dirstate .hg\dirstate

This got Mercurial running again and allowed a simple repair to the previous changes.

The corrupt dirstate seems likely to have been caused by syncing software (OneDrive you know who you are)

Upvotes: 0

Yunus Nedim Mehel
Yunus Nedim Mehel

Reputation: 12379

I am having the same problem but in my case hg verify returns no errors. Maybe this will help you:

You could try recloning and reindexing. This will fetch a fresh clone from the remote repository and reindex the repository

Source:

https://answers.atlassian.com/questions/59049/fisheye-cannot-pull-from-mercurial

Upvotes: 2

Evan
Evan

Reputation: 18599

Try running hg verify on your repository and see if that helps.

Upvotes: 12

Related Questions