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

Re: adding --include-externals to svn diff

From: Matt Hargett <Matt.Hargett_at_riverbed.com>
Date: Wed, 6 Feb 2013 20:01:05 +0000

On 2/2/13 1:51 AM, "Daniel Shahaf" <d.s_at_daniel.shahaf.name> wrote:

>Matt Hargett wrote on Sat, Feb 02, 2013 at 02:04:06 +0000:
>> To parallel the additions of --include-externals to the 'commit' and
>>'ls'
>> commands, I would also like to propose adding the option to the 'diff'
>> command. I just tested latest trunk and the option is unrecognized.
>...
>> Let me know what I can do, within reason, to help bring make these
>> commands more congruent for 1.8.0.
>
>The first step is to define the behaviour of the would-be-added option.
>For example, is it only valid for working copy targets? How does it
>behave when one or both targets is a URL?

All good questions.

Right now, "svn status" automatically recurses into externs which is
useful. There are various ways to 'trick' diff into doing the same thing
with varying degrees of accuracy, namely "svn diff *" from the checkout
root.

Aside from the working copy case, I can see this would be useful for URLs
as well
when I am trying to understand all the source differences (which includes
externals) that went into a release:
"svn diff -r193:301 svn://svn.sourceware.org/binutils/trunk".

The resulting diff could then apply to any checkout that didn't ignore
externs.

As for comparing a working copy to a specified URL, I wasn't aware that
such a thing was possible.

Getting commit to the same level of capability as status is a very nice
addition, getting diff to the same level will really help eliminate
confusion, frustration, and maintenance overhead (due to the need for
custom wrapper scripts) for deployments that leverage externs.

What other things would you like to discuss or have me research? I could
take a stab at a patch for trunk as well, if the concept is agreeable.

Thanks!

> % $svn help diff
> diff (di): Display the differences between two revisions or paths.
> usage: 1. diff [-c M | -r N[:M]] [TARGET[@REV]...]
> 2. diff [-r N[:M]] --old=OLD-TGT[@OLDREV] [--new=NEW-TGT[@NEWREV]] \
> [PATH...]
> 3. diff OLD-URL[@OLDREV] NEW-URL[@NEWREV]
>
Received on 2013-02-06 21:01:38 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.