[SVNMERGE][PATCH] handle -r X-Y, where X > Y

Madan U Sreenivasan madan at collab.net
Mon May 15 22:55:24 PDT 2006


On Tue, 16 May 2006 07:43:26 +0530, Archie Cobbs <archie at dellroad.org>  
wrote:

> Giovanni Bajo wrote:
>> Madan U Sreenivasan <madan at collab.net> wrote:
>>>> [[[
>>>> Accept -rX-Y, for all svnmerge commands, where X > Y.
>>>> Before this patch, empty RevisionSet()s were created when X > Y.
>>  Rationale? "svn merge" accepts the reversed order with a different  
>> semantic
>> (reversed merge). I'm worried about the confusion that can issue. I am  
>> +1 on a
>> patch that errors out when X > Y until there is agreement on how to  
>> best handle
>> this.
>
> I agree... arguably revisions "456-123" more likely means "the empty  
> set".

sorry, I beg to differ.

On a deeper aspect of revision range, revision range is X-Y which means  
all numbers between X and Y (inclusive of X and Y). It does not  
necessarily mean X->Y, meaning all number between X and Y, moving on the  
positive scale - which would still NOT be an empty set.(For example, -r  
45-30 in this case would be 'the set of all whole numbers -  
[30,31,32,...45]')

I fail to understand this logic of empty set.

> Automated tools that use svnmerge might emit such reversed ranges,
> and they would probably expect the empty set too.

could you give some specific example for me to understand here pl.

> This reminds me of an annoying problem I discovered in MySQL today,
> which is that you can't say "... WHERE foo IN ( )" .. i.e, query
> membership in an empty set (this is what some automatically generated
> query strings may try to do).

ah the classic... I guess it is available in the latest versions (am not a  
db guy... just hearsay)

But wrt svnmerge, we are talking of correct functionality and not lack of  
functionality.

Regards,
Madan.



More information about the Svnmerge mailing list