Display the differences between two paths.

        usage:
            1. diff [-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]
        
        1. Display the changes made to TARGETs as they are seen in REV between
           two revisions.  TARGETs may be working copy paths or URLs.
        
           N defaults to BASE if any TARGET is a working copy path, otherwise it
           must be specified.  M defaults to the current working version if any
           TARGET is a working copy path, otherwise it defaults to HEAD.
        
        2. Display the differences between OLD-TGT as it was seen in OLDREV and
           NEW-TGT as it was seen in NEWREV.  PATHs, if given, are relative to
           OLD-TGT and NEW-TGT and restrict the output to differences for those
           paths.  OLD-TGT and NEW-TGT may be working copy paths or URL[@REV]. 
           NEW-TGT defaults to OLD-TGT if not specified.  -r N makes OLDREV default
           to N, -r N:M makes OLDREV default to N and NEWREV default to M.
        
        3. Shorthand for 'svn diff --old=OLD-URL[@OLDREV] --new=NEW-URL[@NEWREV]'
        
        Use just 'svn diff' to display local modifications in a working copy.

        ${cmd_option_list}

def do_diff(self, subcmd, opts, *args):
        """Display the differences between two paths.

        usage:
            1. diff [-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]
        
        1. Display the changes made to TARGETs as they are seen in REV between
           two revisions.  TARGETs may be working copy paths or URLs.
        
           N defaults to BASE if any TARGET is a working copy path, otherwise it
           must be specified.  M defaults to the current working version if any
           TARGET is a working copy path, otherwise it defaults to HEAD.
        
        2. Display the differences between OLD-TGT as it was seen in OLDREV and
           NEW-TGT as it was seen in NEWREV.  PATHs, if given, are relative to
           OLD-TGT and NEW-TGT and restrict the output to differences for those
           paths.  OLD-TGT and NEW-TGT may be working copy paths or URL[@REV]. 
           NEW-TGT defaults to OLD-TGT if not specified.  -r N makes OLDREV default
           to N, -r N:M makes OLDREV default to N and NEWREV default to M.
        
        3. Shorthand for 'svn diff --old=OLD-URL[@OLDREV] --new=NEW-URL[@NEWREV]'
        
        Use just 'svn diff' to display local modifications in a working copy.

        ${cmd_option_list}
        """
        print "'svn %s' opts: %s" % (subcmd, opts)
        print "'svn %s' args: %s" % (subcmd, args)