Provided by: libarch-perl_0.5.2-2_all 

NAME
Arch::Changeset - class representing Arch changeset
SYNOPSIS
Arch::Changeset objects may be created directly if you got a changeset directory:
use Arch::Changeset;
my $changeset = Arch::Changeset->new(
'migo@homemail.com--Perl-GPL/arch-perl--devel--0--patch-6',
'/tmp/,,changeset-6',
);
But often are created indirectly by other objects:
use Arch::Session;
$changeset = Arch::Session->new->get_revision_changeset(
'migo@homemail.com--Perl-GPL/arch-perl--devel--0--patch-6'
);
use Arch::Library;
$changeset = Arch::Library->new->get_revision_changeset(
'migo@homemail.com--Perl-GPL/arch-perl--devel--0--patch-6'
);
print scalar $changeset->get_patch("perllib/Arch/Changeset.pm");
my $diff_file = ($changeset->get_patch("README", 1))[2];
print Arch::Util::load_file($diff_file);
DESCRIPTION
This class represents the changeset concept in Arch and provides some useful methods.
METHODS
The following methods are available:
new, get_patch, get_index, get_changes, get_all_diffs, join_all_diffs, ancestor.
new revision-spec dir-name
Construct the Arch::Changeset object associated with the given fully-qualified revision-spec and the
existing directory dir-name.
get_patch file-path
get_patch file-path type
get_patch file-path type full-file-asis
Return the patch (or otherwise content) of the given file-path in the changeset.
type is integer: 0 (unknown, try to autodetect, this is the default), 1 (modified file, or metadata
change), 2 (new file), 3 (removed file).
The default behaviour is to create a fake diff against /dev/null for non-binary new and removed
files; the full-file-asis flag, if set to true, changes this behaviour and causes to return the
content of such file as-is. Binary new and removed files are always returned as-is regardless of the
flag. This flag is also ignored if type is 1.
In the scalar content return the patch in diff(1) format (or the whole file content as described
above). In the list content return 4 scalars: the patch, the file name on the disk containing this
patch (or the whole file), the change type (that is "patch", "new" or "removed") and the as-is flag.
The returned values that follow the first one (the patch/file content) share the order of the
corresponding parameters; the parameters are more hints, while the returned values accurately
describe the content.
get_index name
Returns the content of the index file name as an ID => path hash.
Valid names are 'orig-dirs-index', 'orig-files-index', 'mod-dirs-index' and 'mod-files-index'.
get_changes
Returns a list of changes in the changeset.
get_all_diffs
Returns all diffs in the changeset (array or arrayref). This includes changes of types MODIFY, ADD
and DELETE.
join_all_diffs
Returns concatenated output of all diffs in the changeset.
ancestor
Return the ancestor of the changeset. If =ancestor file is found (that is the case for library
changesets) its content is returned, otherwise try to guess the ancestor of the revision using
Arch::Util::adjacent_revision.
BUGS
Awaiting for your reports.
AUTHORS
Mikhael Goikhman (migo@homemail.com--Perl-GPL/arch-perl--devel).
SEE ALSO
For more information, see tla, Arch::Session, Arch::Library, Arch::Util.
perl v5.20.2 2006-04-15 Arch::Changeset(3pm)