Hi !
I have some doubt about the behaviour of "svn annotate", hopefully
someone can enlighten me.
Is this assertion true ?
When "svn annotate" outputs a line with: $REV $USER $LINE
it means that $REV is the biggest number so that "diff -r$((REV -
1)):$REV"
outputs a line containing "+$LINE"
If this assertion should be true, then I have an example in which it's
false. I am sorry, it's
a bit contrived but I didn't manage to extract a simpler case. The
problems lies within the
line named "9", the remaining is noise, or not ? I am using
subversion-1.1.1 on linux.
So here it is :
[g ~/svn]$ svnadmin create repo # It happens both with bdb and fsfs
[g ~/svn]$ bzcat svn_dump.bz2 | svnadmin load -q repo # The attachment
[g ~/svn]$ svn annotate file://$PWD/repo/file
5 g 0
8 g 1
7 g 3
4 g 4
2 g 6
1 g 7
8 g 8
8 g 9 <============== So the line "9" was changed in r8
3 g 15
8 g 17
6 g 18
[g ~/svn]$ svn diff -r7:8 file://$PWD/repo/file
Index: file
===================================================================
--- file (revision 7)
+++ file (revision 8)
@@ -1,9 +1,11 @@
0
-j
+1
3
4
6
7
+8
9 <============== Seems not
15
+17
18
[g ~/svn]$ svn cat -r1 file://$PWD/repo/file
j
7
9 <============== It was there since the beginning
[g ~/svn]$ svn diff -r1:8 file://$PWD/repo/file
Index: file
===================================================================
--- file (revision 1)
+++ file (revision 8)
@@ -1,4 +1,11 @@
-j
+0
+1
+3
+4
+6
7
+8
9
-
+15
+17
+18
My intuition is that the line algorithm used by diff is not the same as
the one used by annotate,
thus the discrepancy, but I hope I am wrong.
Thanks for any help.
--
Guillaume
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sun Dec 19 15:45:55 2004