Description
The svn will produce a bogus diff when targets are urls to file. ### start of script svnadmin create repo svn mkdir -m '' file://`pwd`/repo/trunk svn mkdir -m '' file://`pwd`/repo/tags svn co file://`pwd`/repo/trunk repo-wc cat <<EOF > repo-wc/f.txt foo bar snafu EOF svn add repo-wc/f.txt svn ci -m '' repo-wc/f.txt svn cp -m '' repo-wc/f.txt file://`pwd`/repo/tags/f-1.txt # 'edit' the file, remove a line, add fews cat <<EOF > repo-wc/f.txt foo snafu abcdefgh opqrstuw EOF svn ci -m '' repo-wc/f.txt svn cp -m '' repo-wc/f.txt file://`pwd`/repo/tags/f-2.txt svn diff file://`pwd`/repo/tags/f-1.txt file://`pwd`/repo/tags/f-2.txt svn co file://`pwd`/repo/tags repo-tags diff -u repo-tags/f-1.txt repo-tags/f-2.txt ### end of script The result will be: ### svn diff file://`pwd`/repo/tags/f-1.txtfile://`pwd`/repo/tags/f-2.txt Index: f-2.txt =================================================================== --- f-2.txt (.../1.txt) (revision 6) +++ f-2.txt (.../2.txt) (revision 6) @@ -1,4 +1,4 @@ foo -snafu -abcdefgh +u +abcdabcdefgh opqrstuw When it should be something like: ### diff -u repo-tags/f-1.txt repo-tags/f-2.txt --- repo-tags/f-1.txt 2003-05-12 17:22:53.000000000 +0300 +++ repo-tags/f-2.txt 2003-05-12 17:22:53.000000000 +0300 @@ -1,3 +1,4 @@ foo -bar snafu +abcdefgh +opqrstuw On 12 May 2003, Philip Martin wrote: > I get the same result using HEAD. If I reverse the order of the > arguments I get > > $ svn diff file://`pwd`/repo/tags/f-2.txt file://`pwd`/repo/tags/f-1.txt > ../svn/subversion/libsvn_delta/text_delta.c:461: (apr_err=200003) > svn: Incomplete data > svn: Delta source ended unexpectedly > > I suspect the delta is being applied to the wrong source.
http://www.contactor.se/~dast/svn/archive-2003-07/1041.shtml
Original issue reported by jaa