Some days ago I decided to adopt a "vendor branching" in my current project in order to make 3rd party libraries updates, so I tried to do a similar process as described in this question:
Vendor Branching, Mercurial Style?
Now I basically have this scenario:
http://host/hg/vendor
- contains version 2.0 of the library and an update to version 3.0http://host/hg/project
- this is the main project and already contains version 2.0 of the library with some local changes (which previously was version 1.0 and was updated manually).
In the vendor repo I :
- Created a branch named "vendor-lib"
- Added added
lib-2.0
and taglib-2.0
- Added (addremove)
lib-3.0
and taglib-3.0
In my project repo I:
- Pulled the external vendor repo
hg pull ../vendor -f
- from default I did
hg merge vendor-lib
Now comes the problem, all files are conflicted.
In the conflict, Local and Other are normal files, but Base is empty. So the solution is adding one of them or setting the file as completely empty.
I assume that this happens because the pulled branch vendor-lib
hasn't any common parent with default.
I don't know if maybe there is a way to set a common parent between both branches, or just merging the delta between lib-2.0
and lib-3.0
to default.
I'd really appreciate your help. Thank you.