You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Jan Hendrik <ja...@bigfoot.com> on 2004/03/22 12:32:30 UTC

undo commit of added "New Folder"?

Hi all out there!

A user here has added and committed a couple of empty "New 
Folder" instances (maybe instead of deleting the repository; with 
SVN 1.0.0 it is still an off and on in getting him virtual memory 
errors, but that's nothing I care a/o ask anymore about, if they kill 
SVN one fine day someone else should figure out another 
versioning solution for our needs).

Now I try to get these folders gone. Though in this special case it 
would perhaps be easiest to simply delete all the "New Folder"s I 
understand that generally this should be done with a reverse merge 
operation. But while trying to learn something new I get errors:

C:\>svn merge -r 317:316 
"http://192.168.0.3/svn/repos1/trunk/internet/Ridinger/New Folder" d
:\internet\ridinger --dry-run
svn: URL 'http://192.168.0.3/svn/repos1/trunk/internet/Ridinger/New 
Folder' is not properly URI-encoded

C:\>svn merge -r 317:316 "d:\internet\ridinger\New Folder" 
d:\internet\ridinger --dry-run
svn: REPORT request failed on '/svn/repos1/!svn/vcc/default'
svn: The REPORT request returned invalid XML in the response: 
XML parse error at line 1: no element found 
(/svn/repos1/!svn/vcc/default)

C:\>svn merge --dry-run -r 317:316 
http://dim4300/svn/repos1/trunk/internet/Ridinger/New%20Folder 
d:\internet\ridinger
svn: REPORT request failed on '/svn/repos1/!svn/vcc/default'
svn: The REPORT request returned invalid XML in the response: 
XML parse error at line 1: no element found 
(/svn/repos1/!svn/vcc/default)

C:\>svn merge --dry-run -r 317:316 
d:\internet\ridinger\New%20Folder d:\internet\ridinger
svn: 'D:/Internet/Ridinger/New%20Folder' has no URL

C:\>

I understand neither one. Path are checked twice.

Running SVN 1.0.0 on W2K SP2 on both client and server.

TIA - Jan Hendrik

---------------------------------------
Freedom quote:

     Die Eliten Europas werden einen weiteren Sieg über ihre Völker davontragen.
                -- The Times, London, Dec. 9, 2003, in der Presseschau der FAZ
                   zu der - vertagten - Abstimmung über eine Europäische Verfassung.
                   Das deutsche Volk wird ohnehin nicht darüber abstimmen dürfen


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org


Re: undo commit of added "New Folder"?

Posted by Jan Hendrik <ja...@bigfoot.com>.
Concerning Re: undo commit of added "New Folde
Ben Collins-Sussman wrote on 22 Mar 2004, 10:36, at least in part:

> On Mon, 2004-03-22 at 10:02, Jan Hendrik wrote:
> 
> > > The answer is to compare the *parent* directory in r317 with the
> > > parent directory in r316, and to apply the merge to the parent
> > > directory in your working copy.
> > 
> > Trying this in dry-run mode it would undo all other modifications in
> > any of the other folders, too. The whole commit that is. 
> 
> That's correct.  Chapter 4 talks about this:  you can always 'svn
> revert' the extra local mods if the merge creates too many. 

Ah, yes, I see now. At least in theory. :-)

> This isn't such a big deal.  Just 'svn rm URL', or 'svn rm' the
> folders from your working copy and commit.  Reverse merges are only
> one type of hammer... stop trying to use them for every nail you see. 
> :-)

Well, I wanted to learn something - at an object that looked 
relatively easy and with little risk at a production repository!

Thanks a lot for your help, Ben!

Jan Hendrik
---------------------------------------
Freedom quote:

     Are you willing to spend time studying the issues,
     making yourself aware, and then conveying that information
     to family and friends? Will you resist the temptation
     to get a government handout for your community?
     Realize that the doctor's fight against socialized medicine is your fight.
     We can't socialize the doctors without socializing the patients.
     Recognize that government invasion of public power
     is eventually an assault upon your own business.
     If some among you fear taking a stand because you are afraid
     of reprisals from customers, clients, or even government,
     recognize that you are just feeding the crocodile hoping he'll eat you last. 
                -- Ronald Reagan, October 27, 1964


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: undo commit of added "New Folder"?

Posted by Ben Collins-Sussman <su...@collab.net>.
On Mon, 2004-03-22 at 10:02, Jan Hendrik wrote:

> > The answer is to compare the *parent* directory in r317 with the
> > parent directory in r316, and to apply the merge to the parent
> > directory in your working copy.
> 
> Trying this in dry-run mode it would undo all other modifications in any of the 
> other folders, too. The whole commit that is. 

That's correct.  Chapter 4 talks about this:  you can always 'svn
revert' the extra local mods if the merge creates too many. 


> From the book I understood that 
> merge accepts single files:  
> 
> $ cd myproj
> $ svn merge -r 30:31 thhgttg.txt
> U thhgttg.txt 

Yeah, this only works on single files, and only with a working copy
target of implicit "."

>  Well, as then there is no practical way to get rid of 
> those New Folder thing (except for the big gun svndumpfilter perhaps) without 
> losing everything else of that commit I'll leave them there 

This isn't such a big deal.  Just 'svn rm URL', or 'svn rm' the folders
from your working copy and commit.  Reverse merges are only one type of
hammer... stop trying to use them for every nail you see.  :-)



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: undo commit of added "New Folder"?

Posted by Jan Hendrik <ja...@bigfoot.com>.
Concerning Re: undo commit of added "New Folde
Ben Collins-Sussman wrote on 22 Mar 2004, 8:30, at least in part:

> On Mon, 2004-03-22 at 06:32, Jan Hendrik wrote:
> 
> URLs can't have spaces in them.  Use %20 instead.

Tried so below, got just another error.

> > C:\>svn merge -r 317:316 "d:\internet\ridinger\New Folder" 
> > d:\internet\ridinger --dry-run
> > svn: REPORT request failed on '/svn/repos1/!svn/vcc/default'
> > svn: The REPORT request returned invalid XML in the response: 
> > XML parse error at line 1: no element found 
> > (/svn/repos1/!svn/vcc/default)
> 
> Now you're not even passing a URL!  That's just a syntax error.

That's what I understand from svn merge -h (i.a.):

merge: Apply the differences between two sources to a working copy path.
usage: 1. merge sourceURL1[@N] sourceURL2[@M] [WCPATH]
       2. merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]
       3. merge -r N:M SOURCE [WCPATH]

[text is snipped]

  3. In the third form, SOURCE can be a URL, or working copy item
     in which case the corresponding URL is used.  This URL, at
     revisions N and M, defines the two sources to be compared.

> (And by the way, the unintelligible error message was fixed in
> mod_dav_svn 1.0.1.)

No luck - there's no 1.0.1 binary for Windows! I think there was some saying 
that Windows would have to wait for 1.1 (no problem with me).

> > C:\>svn merge --dry-run -r 317:316 
> > http://dim4300/svn/repos1/trunk/internet/Ridinger/New%20Folder
> > d:\internet\ridinger
> > svn: REPORT request failed on '/svn/repos1/!svn/vcc/default'
> > svn: The REPORT request returned invalid XML in the response: 
> > XML parse error at line 1: no element found 
> > (/svn/repos1/!svn/vcc/default)
> 
> Same cryptic error that was fixed in 1.0.1:  what the error really
> should be saying is "That folder doesn't exist in revision 317."
> 
> You're asking svn to compare a certain path in two trees, but it
> doesn't exist in the r317 tree.

Ah, yes. But isn't there a means to set sort of a file mask?

> The answer is to compare the *parent* directory in r317 with the
> parent directory in r316, and to apply the merge to the parent
> directory in your working copy.

Trying this in dry-run mode it would undo all other modifications in any of the 
other folders, too. The whole commit that is. From the book I understood that 
merge accepts single files:  

$ cd myproj
$ svn merge -r 30:31 thhgttg.txt
U thhgttg.txt 

But ok, a folder is not a file. Well, as then there is no practical way to get rid of 
those New Folder thing (except for the big gun svndumpfilter perhaps) without 
losing everything else of that commit I'll leave them there ... Would it be of any 
future help to set

svn:ignore New Folder/ or even better svn:ignore New Fold*/

property on the parent folder? So that folks here can create as many New 
Folder(X) as they like without being able to commit them by error or for 
obstruction?

TIA

Jan Hendrik

---------------------------------------
Freedom quote:

     Are you willing to spend time studying the issues,
     making yourself aware, and then conveying that information
     to family and friends? Will you resist the temptation
     to get a government handout for your community?
     Realize that the doctor's fight against socialized medicine is your fight.
     We can't socialize the doctors without socializing the patients.
     Recognize that government invasion of public power
     is eventually an assault upon your own business.
     If some among you fear taking a stand because you are afraid
     of reprisals from customers, clients, or even government,
     recognize that you are just feeding the crocodile hoping he'll eat you last. 
                -- Ronald Reagan, October 27, 1964


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: undo commit of added "New Folder"?

Posted by Ben Collins-Sussman <su...@collab.net>.
On Mon, 2004-03-22 at 06:32, Jan Hendrik wrote:

> C:\>svn merge -r 317:316 
> "http://192.168.0.3/svn/repos1/trunk/internet/Ridinger/New Folder" d
> :\internet\ridinger --dry-run
> svn: URL 'http://192.168.0.3/svn/repos1/trunk/internet/Ridinger/New
> Folder' is not properly URI-encoded

URLs can't have spaces in them.  Use %20 instead.


> 
> C:\>svn merge -r 317:316 "d:\internet\ridinger\New Folder" 
> d:\internet\ridinger --dry-run
> svn: REPORT request failed on '/svn/repos1/!svn/vcc/default'
> svn: The REPORT request returned invalid XML in the response: 
> XML parse error at line 1: no element found 
> (/svn/repos1/!svn/vcc/default)

Now you're not even passing a URL!  That's just a syntax error.

(And by the way, the unintelligible error message was fixed in
mod_dav_svn 1.0.1.)



> 
> C:\>svn merge --dry-run -r 317:316 
> http://dim4300/svn/repos1/trunk/internet/Ridinger/New%20Folder
> d:\internet\ridinger
> svn: REPORT request failed on '/svn/repos1/!svn/vcc/default'
> svn: The REPORT request returned invalid XML in the response: 
> XML parse error at line 1: no element found 
> (/svn/repos1/!svn/vcc/default)

Same cryptic error that was fixed in 1.0.1:  what the error really
should be saying is "That folder doesn't exist in revision 317."

You're asking svn to compare a certain path in two trees, but it doesn't
exist in the r317 tree.

The answer is to compare the *parent* directory in r317 with the parent
directory in r316, and to apply the merge to the parent directory in
your working copy.




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org