Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Here are the scenarios I can think of and how to resolve them (if possible):</p> <p>1) the files have been copied and modifications have been committed (to their original URL)</p> <p>1a) if the branch does not have those files yet:</p> <ul> <li>svn-copy the files (or their enclosing directory) to the branch (this will preserve their history)</li> <li>if there were no other changes to those specific files in the trunk, revert the trunk for those files/enclosing directory to the revision right before the copy</li> <li>if there were changes in the trunk to these files, you might still be able to get the changes belonging to the branch out by doing a reverse merge: this should succeed unless some of the changes were overlapping</li> </ul> <p>1b) if the branch does have those files already:</p> <ul> <li>svn-merge the trunk's changes to the branch</li> <li>same considerations for the trunk as in 1a)</li> </ul> <p>2) the files have been copied, modifications made but have not been committed (to their original URL as the copy did not change that)</p> <p><em>Note</em>: since the modifications have not been committed yet, there is no history to preserve, also nothing to do with the trunk</p> <p>2a) if the branch does not have those files yet:</p> <ul> <li>make a physical copy of the badly-copied files/directory</li> <li>delete the offending folder from the branch's working copy</li> <li>copy/move the previously copied files/directory to the appropriate place in the branch's working copy</li> <li>add the files to the branch</li> </ul> <p>2b) if the branch does have those files already:</p> <ul> <li>make a physical copy of the badly-copied files/directory</li> <li>delete the offending folder from the branch's working copy</li> <li>update the working copy of the branch</li> <li>merge(*) the previously copied files/directory with their counterparts in the branch's now up-to-date working copy</li> <li>add the files to the branch</li> </ul> <p>(*) use any regular merging tool for the job, e.g. WinMerge</p> <hr> <p><em>Update</em>: after your edit I understand your situation better (the above was with the assumption that after the manual copy the URL of the copied folder still pointed to the trunk)</p> <p>You could try using <code>svn propset --revprop -r &lt;revision&gt; snv:mergeinfo &lt;updated mergeinfo&gt;</code> (unless blocked by a pre-revprop-change hook) on the branch to "fix" the merge info, but I believe you will have to "fix" all subsequent revisions' mergeinfo as well since svn uses this information for fome of its operations (e.g. merges); also, because of the latter, you will have to be <em>very</em> careful about the updated contents.</p> <p>A better option would be, I think, to just update the log at the revision of the incorrect-commit-to the-branch to include the revision of the trunk the copied files refer to. This way the information is available if needed but no risk of messing up svn's future operations. The big drawback of this approach is that merging the branch back to trunk might have some conflicts that will have to be resolved (as the merge info was not updated). The command to do this opetion is <code>svn propset --revprop -r &lt;revision&gt; svn:log &lt;updated log message&gt;</code></p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload