I was looking at the fix for issue 3650, "log -g duplicate output"
http://subversion.tigris.org/issues/show_bug.cgi?id=3650
which is marked fixed and nominated for 1.6. I don't understand whether
the 1.7 output is correct or not because I don't know what log -g is
expected to produce.
Here's my script. It creates a file "A/f" and then modifies it on two
branches "X/f" and "Y/f" which both get merged back to "A/f".
#!/bin/sh -e
svn=svn
svnadmin=svnadmin
svnmucc=svnmucc
url=file:///`pwd`/repo
rm -rf repo wc
$svnadmin create repo
$svn mkdir -mm $url/A
$svnmucc -mm -- put - $url/A/f <<EOD
Af
x
Af
y
Af
EOD
$svn cp -mm $url/A $url/X
$svnmucc -mm -- put - $url/X/f <<EOD
Af
xxxx
Af
y
Af
EOD
$svn cp -mm $url/A $url/Y
$svnmucc -mm -- put - $url/Y/f <<EOD
Af
x
Af
yyyy
Af
EOD
$svn co $url/A wc
$svn merge --reintegrate ^/X wc
$svn ci -mm wc
$svn sw $url/Y wc
$svn merge ^/A wc
$svn ci -mm wc
$svn sw $url/A wc
$svn merge --reintegrate ^/Y wc
$svn ci -mm wc
Running "svn log -gvq file://`pwd`/repo/A/f" using 1.6 gives duplicate
output and the duplication is indeed reduced in 1.7, but 1.7 still has
duplicates:
------------------------------------------------------------------------
r9 | pm | 2011-04-27 18:09:18 +0100 (Wed, 27 Apr 2011)
Changed paths:
M /A
M /A/f
------------------------------------------------------------------------
r8 | pm | 2011-04-27 18:09:15 +0100 (Wed, 27 Apr 2011)
Changed paths:
M /Y
M /Y/f
Merged via: r9
------------------------------------------------------------------------
r7 | pm | 2011-04-27 18:09:12 +0100 (Wed, 27 Apr 2011)
Changed paths:
M /A
M /A/f
Merged via: r9, r8
------------------------------------------------------------------------
r4 | pm | 2011-04-27 18:09:09 +0100 (Wed, 27 Apr 2011)
Changed paths:
M /X/f
Merged via: r9, r8, r7
------------------------------------------------------------------------
r3 | pm | 2011-04-27 18:09:09 +0100 (Wed, 27 Apr 2011)
Changed paths:
A /X (from /A:2)
Merged via: r9, r8, r7
------------------------------------------------------------------------
r6 | pm | 2011-04-27 18:09:10 +0100 (Wed, 27 Apr 2011)
Changed paths:
M /Y/f
Merged via: r9
------------------------------------------------------------------------
r5 | pm | 2011-04-27 18:09:09 +0100 (Wed, 27 Apr 2011)
Changed paths:
A /Y (from /A:4)
Merged via: r9
------------------------------------------------------------------------
r7 | pm | 2011-04-27 18:09:12 +0100 (Wed, 27 Apr 2011)
Changed paths:
M /A
M /A/f
------------------------------------------------------------------------
r2 | pm | 2011-04-27 18:09:09 +0100 (Wed, 27 Apr 2011)
Changed paths:
A /A/f
------------------------------------------------------------------------
r7 appears twice, one instance is a direct change to A/f, the other is
via merge. Is it correct that r7 should appear twice?
The other confusing thing is that branch creations, r3 and r5, appear in
the output although the file was not modified in those revisions. Is it
correct for those revisions to appear?
--
Philip
Received on 2011-04-27 19:40:47 CEST