You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Dominic Anello <da...@danky.com> on 2005/02/08 20:48:48 UTC
BUG: svn switch does not update URL keywords?
I believe I've found a bug in svn's handling of the URL keyword when
processing a switch command, and I'd like to hear other users' thoughts.
When doing a switch, it appears that svn does not update the $URL$
keyword in files that have the keyword set but which have no updates.
To me this seems like a bug. If you do a build from a WC you have
switched, you can wind up pushing out files that have the wrong URL
tagged in them.
Reproduction recipe below.
Any thoughts?
-Dominic
$ svn --version
svn, version 1.1.3 (r12730)
compiled Feb 8 2005, 15:08:59
...
$ svnadmin create repos
$ svn co file://`pwd`/repos wc
Checked out revision 0.
$ svn mkdir wc/trunk wc/branches
A wc/trunk
A wc/branches
$ echo -e '$URL$\nText file' > wc/trunk/foo.txt
$ svn add wc/trunk/foo.txt
A wc/trunk/foo.txt
$ svn ps svn:keywords URL wc/trunk/foo.txt
property 'svn:keywords' set on 'wc/trunk/foo.txt'
$ svn ci -m "Initial setup" wc
Adding wc/branches
Adding wc/trunk
Adding wc/trunk/foo.txt
Transmitting file data .
Committed revision 1.
$ cat wc/trunk/foo.txt
$URL: file:///home/danello/tmp/repos/trunk/foo.txt $
Text file
$ svn cp wc/trunk wc/branches/1.1
A wc/branches/1.1
$ svn ci -m "branch" wc
Adding wc/branches/1.1
Committed revision 2.
$ cat wc/branches/1.1/foo.txt
$URL: file:///home/danello/tmp/repos/branches/1.1/foo.txt $
Text file
$ svn co file://`pwd`/repos/trunk src
A src/foo.txt
Checked out revision 2.
$ cat src/foo.txt
$URL: file:///home/danello/tmp/repos/trunk/foo.txt $
Text file
$ svn switch file://`pwd`/repos/branches/1.1 src
At revision 2.
$ cat src/foo.txt
$URL: file:///home/danello/tmp/repos/trunk/foo.txt $
Text file
$ rm src/foo.txt
$ svn up src
Restored 'src/foo.txt'
At revision 2.
$ cat src/foo.txt
$URL: file:///home/danello/tmp/repos/branches/1.1/foo.txt $
Text file
Re: BUG: svn switch does not update URL keywords?
Posted by Jani Averbach <ja...@jaa.iki.fi>.
On 2005-02-08 15:48-0500, Dominic Anello wrote:
> I believe I've found a bug in svn's handling of the URL keyword when
> processing a switch command, and I'd like to hear other users' thoughts.
Thanks for your report and reproduction recipe. However, this is a
known issue, please see:
http://subversion.tigris.org/issues/show_bug.cgi?id=1975
Br, Jani
>
> When doing a switch, it appears that svn does not update the $URL$
> keyword in files that have the keyword set but which have no updates.
> To me this seems like a bug. If you do a build from a WC you have
> switched, you can wind up pushing out files that have the wrong URL
> tagged in them.
>
> Reproduction recipe below.
>
> Any thoughts?
>
> -Dominic
>
> $ svn --version
> svn, version 1.1.3 (r12730)
> compiled Feb 8 2005, 15:08:59
> ...
>
> $ svnadmin create repos
>
> $ svn co file://`pwd`/repos wc
> Checked out revision 0.
>
> $ svn mkdir wc/trunk wc/branches
> A wc/trunk
> A wc/branches
>
> $ echo -e '$URL$\nText file' > wc/trunk/foo.txt
>
> $ svn add wc/trunk/foo.txt
> A wc/trunk/foo.txt
>
> $ svn ps svn:keywords URL wc/trunk/foo.txt
> property 'svn:keywords' set on 'wc/trunk/foo.txt'
>
> $ svn ci -m "Initial setup" wc
> Adding wc/branches
> Adding wc/trunk
> Adding wc/trunk/foo.txt
> Transmitting file data .
> Committed revision 1.
>
> $ cat wc/trunk/foo.txt
> $URL: file:///home/danello/tmp/repos/trunk/foo.txt $
> Text file
>
> $ svn cp wc/trunk wc/branches/1.1
> A wc/branches/1.1
>
> $ svn ci -m "branch" wc
> Adding wc/branches/1.1
>
> Committed revision 2.
>
> $ cat wc/branches/1.1/foo.txt
> $URL: file:///home/danello/tmp/repos/branches/1.1/foo.txt $
> Text file
>
> $ svn co file://`pwd`/repos/trunk src
> A src/foo.txt
> Checked out revision 2.
>
> $ cat src/foo.txt
> $URL: file:///home/danello/tmp/repos/trunk/foo.txt $
> Text file
>
> $ svn switch file://`pwd`/repos/branches/1.1 src
> At revision 2.
>
> $ cat src/foo.txt
> $URL: file:///home/danello/tmp/repos/trunk/foo.txt $
> Text file
>
> $ rm src/foo.txt
>
> $ svn up src
> Restored 'src/foo.txt'
> At revision 2.
>
> $ cat src/foo.txt
> $URL: file:///home/danello/tmp/repos/branches/1.1/foo.txt $
> Text file
>
--
Jani Averbach
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org