On 1/9/2010 11:36 AM, David Huang wrote:

On Jan 9, 2010, at 7:58 AM, Geoff Rowell wrote:
I follow a few rules to avoid this:
1) Remove obsolete merge info as part of the branch creation process
(svn pd -R svn:mergeinfo /my/branch).

I don't do that regularly (but have done it once or twice), but from my understanding, 
that fixes the "problem"/annoyance where existing subtree mergeinfo gets 
updated every time a merge is done, even if the merge doesn't affect the files with 
mergeinfo. That's not the same issue as what I'm seeing though; in my case, mergeinfo is 
being created on files that didn't have it before.

FWIW, I made a backup of my repo, then in the backup, removed all mergeinfo from trunk and made a new branch off of trunk. I confirmed that the branch also has no mergeinfo. I then made a commit to the trunk and merged that commit to the branch. It caused the same problem where mergeinfo was added to every file in those 4 directories that have externals.

As a second test, I removed all the external definitions from trunk, made yet another branch off of trunk, committed a change to trunk, then merged the change to the branch. Mergeinfo was created on the root of the branch, but nowhere else--which is what I wanted and expected.

So, it seems to have something to do with the externals, but I don't know what.

Reply via email to