Reverse-merging a change, and then re-merging it, falsely causes 'status' and 'diff' to think the affected files are still changed:
[[[ 0:% $svn st (clean; nothing relevant) 0:% $svn merge -c -979045 . --- Reverse-merging r979045 into '.': U subversion/mod_dav_svn/reports/update.c U subversion/libsvn_ra_neon/fetch.c --- Recording mergeinfo for reverse merge of r979045 into '.': U . 0:% $svn merge -c 979045 . 0:% $svn st --depth=empty ./ ; $svn st subversion/*neon subversion/mod* M subversion/libsvn_ra_neon/fetch.c M subversion/mod_dav_svn/reports/update.c --- Changelist 'helpers': subversion/libsvn_ra_neon/props.c --- Changelist 'cap': subversion/libsvn_ra_neon/options.c 0:% $svn di subversion/libsvn_ra_neon Index: subversion/libsvn_ra_neon/fetch.c =================================================================== --- subversion/libsvn_ra_neon/fetch.c (revision 981102) +++ subversion/libsvn_ra_neon/fetch.c (working copy) @@ -1713,10 +1713,8 @@ if (! rb->receiving_all) break; - base_checksum = svn_xml_get_attr_value("base-checksum", atts); - SVN_ERR((*rb->editor->apply_textdelta)(rb->file_baton, - base_checksum, + NULL, /* ### base_checksum */ rb->file_pool, &(rb->whandler), &(rb->whandler_baton))); 0:% ./tools/client-side/wc-format.sh 18 0:% ./subversion/svnversion/svnversion 981102M 0:% ]]]