Ulrich Eckhardt wrote:
Check if while merging you omitted changing the mergeinfo in the 'libA'
folder. If so, that's probably a human error. Adding the missing info
manually is the right way to go.
Actually, the fact that merging to X changes the mergeinfo in subdir Y that
wasn't touched is a common source of confusion. There are two ways out:
1. Educate the users. They must understand that these separate mergeinfo
properties are actually necessary. Yes, a better design could perhaps fix
that, but that is not the status quo.
Yes, that's pretty much the conclusion I came up to as well. I'll have
to go around and tell the users to remember to commit everything. And I
agree that a better design would help avoiding the confusion, even
though I'm not sure what this design could look like.
2. Merge to the root of the project only. This avoids having subdirs with
differing mergeinfos. This is a bit difficult in your project, because it
contains the libs which are otherwise on the same "level", i.e. projects
themselves. What you should consider is not having copies of the libs in your
main project but references. The closest to the current state would be to use
svn:external to reference the libs. That way, the mergeinfo of both your
project and the external libs wouldn't be mixed but stay apart.
I can't use svn:external because I have local modifications that are not
in the public versions of those libs.
In the end, I'll have to keep an eye on my users.
Regards
Olivier