In one of my repositories I added a file which accidentally had the
executable bit set. Subversion, of course, set the svn:executable
property for me. I committed this before realising it, and later
committed a propdel of svn:executable on this file.
Today I dumped this repository with svnadmin from 0.25.0 in order to
upgrade to 0.30.0. I loaded it into a new repository. Just to make
sure things were as they should be, I dumped the new repository and
diffed the two dump files. The only significant difference concerned
the svn:executable prop on the above file.
Here's the relevant section of the diff:
--- old.dump 2003-10-02 12:26:18.000000000 +0200
+++ new.dump 2003-10-02 12:33:22.000000000 +0200
[...]
@@ -11068,9 +11068,13 @@
Node-path: XXXX/xxxx.xxx
Node-kind: file
Node-action: change
-Prop-content-length: 59
-Content-length: 59
+Prop-content-length: 85
+Content-length: 85
+K 14
+svn:executable
+V 1
+*
K 13
svn:mime-type
V 24
@@ -17109,7 +17113,7 @@
[...]
On further investigation I found that the working copy believed there
not to be an svn:executable property set on the file:
$ svn up wc
At revision 22.
$ svn pl -v wc/XXXX/xxxx.xxx
Properties on 'wc/XXXX/xxxx.xxx':
svn:mime-type : application/octet-stream
But the repository did not agree:
$ svn pl -v file://`pwd`/repo/XXXX/xxxx.xxx
Properties on 'file:///[...]/repo/XXXX/xxxx.xxx':
svn:executable : *
svn:mime-type : application/octet-stream
I was able to reproduce the symptoms using only version 0.30.0, but the
dump file diff is different:
$ svn --version
svn, version 0.30.0 (r7178)
compiled Sep 30 2003, 15:40:18
Copyright (C) 2000-2003 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
The following repository access (RA) modules are available:
* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
- handles 'http' schema
- handles 'https' schema
* ra_local : Module for accessing a repository on local disk.
- handles 'file' schema
* ra_svn : Module for accessing a repository using the svn network protocol.
- handles 'svn' schema
$ svnadmin create r1
$ svn co file://`pwd`/r1 wc1
Checked out revision 0.
$ touch wc1/test
$ chmod +x wc1/test
$ svn add wc1/test
A wc1/test
$ svn ci -m "" wc1
Adding wc1/test
Transmitting file data .
Committed revision 1.
$ svn pdel svn:executable wc1/test
property 'svn:executable' deleted from 'wc1/test'.
$ svn ci -m "" wc1
Sending wc1/test
Committed revision 2.
$ svnadmin dump r1 >r1.dump
* Dumped revision 0.
* Dumped revision 1.
* Dumped revision 2.
$ svnadmin create r2
$ svnadmin load r2 <r1.dump
<<< Started new txn, based on original revision 1
* adding path : test ... done.
------- Committed revision 1 >>>
<<< Started new txn, based on original revision 2
* editing path : test ... done.
------- Committed revision 2 >>>
$ svn co file://`pwd`/r2 wc2
A wc2/test
Checked out revision 2.
$ svn pl -v wc2/test
Properties on 'wc2/test':
svn:executable : *
You have new mail in /var/mail/michael
$ svnadmin dump r2 >r2.dump
* Dumped revision 0.
* Dumped revision 1.
* Dumped revision 2.
$ diff -u r1.dump r2.dump
--- r1.dump 2003-10-02 14:15:43.000000000 +0200
+++ r2.dump 2003-10-02 14:16:33.000000000 +0200
@@ -63,12 +63,3 @@
2003-10-02T12:15:28.256434Z
PROPS-END
-Node-path: test
-Node-kind: file
-Node-action: change
-Prop-content-length: 10
-Content-length: 10
-
-PROPS-END
-
-
--
Michael Wood <mwood@its.uct.ac.za>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Oct 2 14:40:01 2003