Index: contrib/client-side/svnmerge.py =================================================================== --- contrib/client-side/svnmerge.py (revision 19182) +++ contrib/client-side/svnmerge.py (working copy) @@ -256,7 +256,13 @@ # matters: if it's non-empty there is a modification. out = launchsvn("status -q %s" % dir) if out and out[0].strip(): - error('"%s" has local modifications; it must be clean' % dir) + # Permit multiple 'svnmerge init's (with differing copyfrom + # parameter) within a single revision. + out = launchsvn("diff %s" % dir) + if not (len(out) <= 7 and \ + out[1].find("Property changes on:") != -1 and \ + out[3].find("Name: svnmerge-integrated") != -1): + error('"%s" has local modifications; it must be clean' % dir) for L in launchsvn("status -u %s" % dir): if len(L) > 7 and L[7] == '*': error('"%s" is not up to date; please "svn update" first' % dir)