NAME
SVN::Web::Diff - SVN::Web action to show differences between file revisions
SYNOPSIS
In config.yaml
actions:
...
diff:
class: SVN::Web::Diff
...
DESCRIPTION
Returns the difference between two revisions of the same file.
CONFIGURATION
The following configuration options may be specified in config.yaml.
- max_diff_size
-
If showing the diff (see
show_diff
), this determines the maximum size of the diff that will be shown. If the size of the generated diff (in bytes) is larger than this figure then it is not shown.Defaults to 200,000 bytes.
OPTIONS
- rev1
-
The first revision of the file to compare.
- rev2
-
The second revision of the file to compare.
- revs
-
A list of two or more revisions. If present, the smallest number in the list is assigned to
rev1
(overriding any givenrev1
value) and the largest number in the list is assigned torev2
(overriding any givenrev2
value).In other words:
...?rev1=5;rev2=10
is equal to:
...?revs=10;revs=5
This supports the "diff between arbitrary revisions" functionality.
- mime
-
The desired output format. The default is
html
for a diff marked up in HTML. The other allowed value istext
, for a plain text unified diff.
TEMPLATE VARIABLES
- at_head
-
Boolean, indicating whether or not we're currently diffing against the youngest revision of this file.
- context
-
Always
file
. - rev1
-
The first revision of the file to compare. Corresponds with the
rev1
parameter, either set explicitly, or extracted fromrevs
. - rev2
-
The second revision of the file to compare. Corresponds with the
rev2
parameter, either set explicitly, or extracted fromrevs
. - diff
-
An SVN::Web::DiffParser object that contains the text of the diff. Call the object's methods to format the diff.
- diff_size
-
The size of the generated diff (before parsing).
- max_diff_size
-
The configured maximum diff size.
EXCEPTIONS
- (cannot diff nodes of different types: %1 %2 %3)
-
The given path has different node types at the different revisions. This probably means a file was added, deleted, and then re-added as a directory at a later date (or vice-versa).
- (path %1 is a directory at rev %2)
-
The user has tried to diff two directories. This is not currently supported.
- (path %1 does not exist in revision %2)
-
The given path is not present in the repository at the given revision.
- (two revisions must be provided)
-
No revisions were given to diff against.
- (rev1 and rev2 must be different)
-
Either only one revision number was given, or several were given, but they're the same number.
COPYRIGHT
Copyright 2003-2004 by Chia-liang Kao <clkao@clkao.org>
.
Copyright 2005-2007 by Nik Clayton <nik@FreeBSD.org>
.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.