If do a google search for "svn commit parents" you'll see I'm not the first to 
unofficially request this and come across this issue.  I suspect most others 
just kludged around this and found a subtree to checkin with additional work 
involved.  I see the need for this quite often when I'm running scripts that 
interactive with multiple directory trees.  Quite often the scripts create new 
dirs with new files that I want to checkin.  So I add these with --parents.  
When completed though I may want to selectively checkin certain files w/ a 
given comment (not the whole subtree).

Regarding your corner cases if we stick to the explanation that only newly 
added parent directories (and their properties set) will get added to the 
commit list then this handles these scenarios.  In the first scenario the 
property updates in A would NOT be committed because A is not a newly added 
parent directory.  In the second corner case items in the changelist plus any 
newly added parent directories is what would be committed.

Eric

-----Original Message-----
From: Philip Martin [mailto:philip.mar...@wandisco.com]
Sent: Friday, August 02, 2013 12:05 PM
To: Braun, Eric
Cc: Stefan Sperling; users@subversion.apache.org; Moe, Mark
Subject: Re: Mixing recursive and non-recursive commits

"Braun, Eric" <eric.br...@medtronic.com> writes:

> I don't know why this is
> should be complicated to do from the command line when GUI clients are
> already doing this today.  I would use a GUI client to do this work in
> most cases but GUI's don't work as well when defining
> wildcards/filtering (*/*/file for example for a commit target).

It probably would not be that complicated to implement something, although the 
code in question is already quite complex. One problem is determining exactly 
what to implement in the corner cases.  The bigger obstacle is determining 
whether this feature will be useful.  How many people are going to use it?  I 
have never made a commit where this behaviour would have been helpful but other 
people use Subversion differently.

One corner case: suppose I have a directory A/ in the working copy and 
repository.  I add directory B/, files A/f and B/f and set properties 
associated with the new files on A/ and B/.  Now a commit --with-parents of A/f 
and B/f includes B/, because it is added, and that includes the property 
changes on B/. Do the property changes on A/ get included in the commit or not? 
 Will we need another option to give the other behaviour?

Another corner case: how does it interact with --changelist?  The commit is 
limited to targets in the changelist so I suppose --with-parents would only 
apply to those items?

--
Philip Martin | Subversion Committer
WANdisco | Non-Stop Data


[CONFIDENTIALITY AND PRIVACY NOTICE]

Information transmitted by this email is proprietary to Medtronic and is 
intended for use only by the individual or entity to which it is addressed, and 
may contain information that is private, privileged, confidential or exempt 
from disclosure under applicable law. If you are not the intended recipient or 
it appears that this mail has been forwarded to you without proper authority, 
you are notified that any use or dissemination of this information in any 
manner is strictly prohibited. In such cases, please delete this mail from your 
records.

To view this notice in other languages you can either select the following link 
or manually copy and paste the link into the address bar of a web browser: 
http://emaildisclaimer.medtronic.com

Reply via email to