If the local copy has been checked out using one access method (eg. file://), SVN allows performing a merge where the first two arguments are being specified using another access method (eg. http://), but referring to the same repository. However, if a file has been added to the local repository as a result of the merge, the commit fails with: "svn: add_file `/branches/trunk/foo/newfile': copy_url is from different repo"
Original issue reported by dgehri