[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: prop ops on schedule-delete

From: Ed Price <ed.price_at_gmail.com>
Date: 2006-03-13 15:03:19 CET

> > Should I file this as an issue?
> +1 to that.

Given the discussion I'm glad to see has now occurred, I'm not
sure how to file this.

Once Julian disagreed that prop ops should work on schedule-delete
I looked into other operations on schedule-delete; the following
commands appear to work (ie don't print an error or warning):

 svn blame
 svn cat
 svn commit (AS EXPECTED)
 svn delete
 svn diff (AS EXPECTED)
 svn export
 svn info (AS EXPECTED)
 svn list
 svn lock
 svn log
 svn merge
 svn propdel, propedit, propget, proplist, propset
 svn resolved
 svn status
 svn unlock
 svn update (expected?)

Presumably commit (duh), diff, and info should work.

What about update? (Current behavior appears to
be that if the file has no updates, it stays deleted,
but if it has updates, it gets "undeleted". If one modifies
the file in the WC, then svn deletes it, then updates it,
it does *not* cause a conflict, it's the same as if it had
not been modified prior to deletion... Which doens't
seem so wrong. AFAIK there's no way to undelete
a file and yet retain its pre-delete modifications --
revert will revert both the delete and the changes...
OTOH maybe that's not a good thing. Maybe there
should be a way to just "undelete" a file without
reverting any pre-delete local changes?)

What about lock/unlock?

What about all the others? :)

Thanks,
-Ed

$ svnadmin create repos
$ svn co file://`pwd`/repos wc
Checked out revision 0.
$ cd wc
$ touch foo
$ svn add foo
A foo
$ svn ci -m ""
Adding foo
Transmitting file data .
Committed revision 1.
$ echo "Some text" > foo
$ svn ci -m ""
Sending foo
Transmitting file data .
Committed revision 2.
$ svn up
At revision 2.
$ svn st
$ ls
foo
$ svn rm foo
D foo
$ svn st
D foo
$ ls
$ svn add foo
svn: warning: 'foo' not found
$ svn blame foo
     2 svndev Some text
$ svn cat foo
Some text
$ svn cleanup foo
subversion/libsvn_wc/questions.c:74: (apr_err=2)
svn: 'foo' does not exist
$ # svn commit foo # don't need to test that :)
$ svn cp foo bar
subversion/libsvn_client/copy.c:75: (apr_err=145000)
svn: Path 'foo' does not exist
$ svn rm foo
D foo
$ svn diff foo
Index: foo
===================================================================
--- foo (revision 2)
+++ foo (working copy)
@@ -1 +0,0 @@
-Some text
$ svn export foo
Export complete.
$ ls
$ # huh?
$ svn help foo
"foo": unknown command.

$ # just kidding :)
$ svn import foo
subversion/svn/import-cmd.c:99: (apr_err=205000)
svn: Invalid URL 'foo'
$ svn info foo
Path: foo
Name: foo
URL: file:///home/svndev/foo/repos/foo
Repository Root: file:///home/svndev/foo/repos
Repository UUID: 2967b679-e00e-0410-af42-cb9c9333cc57
Revision: 2
Node Kind: file
Schedule: delete
Last Changed Author: svndev
Last Changed Rev: 2
Last Changed Date: 2006-03-13 08:40:19 -0500 (Mon, 13 Mar 2006)
Text Last Updated: 2006-03-13 08:40:16 -0500 (Mon, 13 Mar 2006)
Checksum: 3c825ca59d58209eae5924221497780c

$ svn ls foo
foo
$ svn lock foo
'foo' locked by user 'svndev'.
$ svn log foo
------------------------------------------------------------------------
r2 | svndev | 2006-03-13 08:40:19 -0500 (Mon, 13 Mar 2006) | 1 line

------------------------------------------------------------------------
r1 | svndev | 2006-03-13 08:39:57 -0500 (Mon, 13 Mar 2006) | 1 line

------------------------------------------------------------------------
$ svn merge foo@1 foo@2 foo
$ ls
$ # huh
$ svn merge foo@2 foo@1 foo
$ ls
$ svn mv foo bar
subversion/libsvn_client/copy.c:75: (apr_err=145000)
svn: Path 'foo' does not exist
$ # we know that prop ops work...
$ svn resolved foo
$ svn st foo
D K foo
$ svn switch foo
subversion/svn/switch-cmd.c:125: (apr_err=125002)
svn: 'foo' does not appear to be a URL
$ svn unlock foo
subversion/svn/switch-cmd.c:125: (apr_err=125002)
svn: 'foo' does not appear to be a URL
$ svn unlock foo
'foo' unlocked.
$ svn up foo
At revision 2.
$ ls
$

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Mar 13 15:04:59 2006

This is an archived mail posted to the Subversion Dev mailing list.