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

Re: visual diff

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: 2004-02-26 17:43:53 CET

Some notes on book updates needed, and issue tracking:

C. Michael Pilato wrote:
> solo turn <soloturn99@yahoo.com> writes:
>>i was not able to find the description of how to use a visual diff
>>program in subversion any more (book, svn help diff). i just entered
>>the path into the "config" file.
>>- how can i use another visual diff program (mine says it does not
>> know -u switch)?
> You might have to write a script that wraps your visual diff program,
> ignores a -u parameter, and add any params your diff program needs.

And ignores or handles the two "-L" options that specify the friendly names of the files.

Note that any option string specified with "-x", including an empty string, will replace the "-u" that is passed by default, but there is no way of altering the "-L" options.

We need to describe this in the book, specifying the syntax and giving example scripts for different platforms. And the "diff3" stuff. The relevant parts of the book are:

  Chapter 3, footnote 3.
  svn-ch-7-sect-1.3.2 "Config": diff-cmd, diff3-cmd, diff3-has-program-arg.
  svn-ch-9-sect-1.1 "svn Switches": --diff-cmd, --diff3-cmd, --extensions.
  The reference entry for "svn diff".

(I still don't understand the "diff3-has-program-arg" config option.)

We also need to try to make the use of an external "diff" program more user-friendly in the future, somehow. I think there's an issue open for it.

>>- how can i do a binary compare? even if the diff program supports
>> it, subversion says "no, we don't do that" before even calling the
>> diff program
> Hm. That's a good point. I suppose you can't.

This deserves a separate issue in the tracker. I would call it a defect, because I think we have accidentally prevented some intended functionality.

>>- is there a difference between a diff for viewing changes (the
>> user), and a diff for sending changes to the server?
> The diffs sent to and from the server are binary diffs -- not
> contextual, human-readable ones.

And the handling of differences sent to and from the sever (known as "deltas") is completely separate from the generation of diffs by the client program (internally or externally) for the user to see. The delta format and handling is the same for all files, and cannot be changed by the user. This is not really explained in the book; there is just a note under "Subversion's Features: Consistent data handling". A user who configures an external "diff" program might well worry about the impact on commits and updates.

- Julian

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Feb 26 17:43:09 2004

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

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