You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Ben Collins-Sussman <su...@google.com> on 2006/03/28 16:17:41 UTC
Re: SVN improvements - again ;)
(redirected to the SVN dev list at the request of Ben)
On 3/28/06, Alexander Limi <li...@plone.org> wrote:
> If you want me to not send you these small questions but put it in an
> issue tracker instead, feel free to tell me so.
Oh, I certainly don't mind! But you're likely to get a bunch of more
interesting responses/viewpoints if you mail the
dev@subversion.tigris.org list. :-)
> Just a tiny suggestion for improvement that I assume wouldn't be hard to
> add:
>
> When I do:
>
> $ svn up *
> Updated to revision 21411.
> Updated to revision 66241.
> Updated to revision 21411.
> Updated to revision 21411.
> Updated to revision 66241.
> Updated to revision 66241.
> svn: REPORT request failed on '/svn/collective/!svn/vcc/default'
> svn: Cannot replace a directory from within
>
> It's impossible for me to know where this failed. Would it be possible to
> make it do something like:
>
> $ svn up *
> Archetypes: Updated to revision 21411.
> CMFPlone: Updated to revision 66241.
> Ploneboard: Updated to revision 21411.
Hmm, interesting. Technically, you typed the equivalent of
$ svn up archetypes cmfplone ploneboard
Which subversion treats exactly the same as if you had typed
$ svn up archetypes
$ svn up cmfplone
$ svn up ploneboard
So yeah, perhaps if 'update' has multiple targets, it can tell you
what it's updating...
See what the folks on dev@ think, too.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: SVN improvements - again ;)
Posted by Julian Foad <ju...@btopenworld.com>.
Ben Collins-Sussman wrote:
> On 3/28/06, Alexander Limi <li...@plone.org> wrote:
>
>> When I do:
>>
>> $ svn up *
>> Updated to revision 21411.
>> Updated to revision 66241.
>> Updated to revision 21411.
>> Updated to revision 21411.
>> Updated to revision 66241.
>> Updated to revision 66241.
>> svn: REPORT request failed on '/svn/collective/!svn/vcc/default'
>> svn: Cannot replace a directory from within
>>
>> It's impossible for me to know where this failed. Would it be possible to
>> make it do something like:
>>
>> $ svn up *
>> Archetypes: Updated to revision 21411.
>> CMFPlone: Updated to revision 66241.
>> Ploneboard: Updated to revision 21411.
Rather than changing the behaviour of "svn update", I'd suggest it's that error
message that needs to be improved.
- Julian
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: SVN improvements - again ;)
Posted by Michael Sweet <mi...@easysw.com>.
Julian Foad wrote:
> Ben Collins-Sussman wrote:
>> On 3/28/06, Alexander Limi <li...@plone.org> wrote:
> [...]
>>> It's impossible for me to know where this failed. Would it be
>>> possible to
>>> make it do something like:
>>>
>>> $ svn up *
>>> Archetypes: Updated to revision 21411.
>>> CMFPlone: Updated to revision 66241.
>>> Ploneboard: Updated to revision 21411.
>>
>> Hmm, interesting. Technically, you typed the equivalent of
>>
>> $ svn up archetypes cmfplone ploneboard
>>
>> Which subversion treats exactly the same as if you had typed
>>
>> $ svn up archetypes
>> $ svn up cmfplone
>> $ svn up ploneboard
>>
>> So yeah, perhaps if 'update' has multiple targets, it can tell you
>> what it's updating...
>
> As an incremental improvement, printing the name of each target would
> help in cases like this, but I don't think that gain is worth the risk
> of upsetting people who parse the output for the "Updated to revision
> N." line.
>
> If "svn update" is to handle multiple targets in a better way than just
> iterating over them as it does now, then ultimately I'd like it to
> combine them and do a single update covering all of them, at least a
> single update for each group of targets that are in the same
> repository. (Whether that would involve changing the semantics in any
> way beyond just printing a single "Updated" line for each repository is
> unclear.)
>
> The difficulty above, of not knowing which target each part of the
> output refers to, can be resolved easily by replacing "svn up *" with
> something like "for T in *; do echo Updating $T:; svn up $T; done".
Building on that, how about just printing the directory that is being
updated when the user specifies more than one directory, e.g.:
$ svn up *
Updating 'archetypes'
Updated to revision 21411.
Updating 'CMFPlone'
Updated to revision 66241.
Updating 'Ploneboard'
Updated to revision 21411.
vs.:
$ svn up archetypes
Updated to revision 21411.
That would keep the output to a minimum for the common "svn up"
scenario while providing enough information for users when they
update multiple directories. Scripts can continue to parse the
output for the single-directory output format, and if you are
doing multiple directories you probably are already using a for
loop for each directory anyways...
--
______________________________________________________________________
Michael Sweet, Easy Software Products mike at easysw dot com
Internet Printing and Document Software http://www.easysw.com
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: SVN improvements - again ;)
Posted by Julian Foad <ju...@btopenworld.com>.
Ben Collins-Sussman wrote:
> On 3/28/06, Alexander Limi <li...@plone.org> wrote:
[...]
>> It's impossible for me to know where this failed. Would it be possible to
>> make it do something like:
>>
>> $ svn up *
>> Archetypes: Updated to revision 21411.
>> CMFPlone: Updated to revision 66241.
>> Ploneboard: Updated to revision 21411.
>
> Hmm, interesting. Technically, you typed the equivalent of
>
> $ svn up archetypes cmfplone ploneboard
>
> Which subversion treats exactly the same as if you had typed
>
> $ svn up archetypes
> $ svn up cmfplone
> $ svn up ploneboard
>
> So yeah, perhaps if 'update' has multiple targets, it can tell you
> what it's updating...
As an incremental improvement, printing the name of each target would help in
cases like this, but I don't think that gain is worth the risk of upsetting
people who parse the output for the "Updated to revision N." line.
If "svn update" is to handle multiple targets in a better way than just
iterating over them as it does now, then ultimately I'd like it to combine them
and do a single update covering all of them, at least a single update for each
group of targets that are in the same repository. (Whether that would involve
changing the semantics in any way beyond just printing a single "Updated" line
for each repository is unclear.)
The difficulty above, of not knowing which target each part of the output
refers to, can be resolved easily by replacing "svn up *" with something like
"for T in *; do echo Updating $T:; svn up $T; done".
- Julian
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org