NAME
Git::Raw::Tree - Git tree class
VERSION
version 0.35
DESCRIPTION
A Git::Raw::Tree
represents a Git tree.
WARNING: The API of this module is unstable and may change without warning (any change will be appropriately documented in the changelog).
METHODS
lookup( $repo, $id )
Retrieve the tree corresponding to C$id>. This function is pretty much the same as $repo->lookup($id)
except that it only returns trees.
id( )
Retrieve the id of the tree, as string.
entries( )
Retrieve a list of Git::Raw::Tree::Entry objects.
entry_byname( $name )
Retrieve a Git::Raw::Tree::Entry object by name.
entry_bypath( $path )
Retrieve a Git::Raw::Tree::Entry object by path.
merge( $ancestor, $theirs, [\%merge_opts] )
Merge $theirs
into this tree. $ancestor
and $theirs
should be Git::Raw::Tree
objects. See Git::Raw::Repository->merge()
for valid %merge_opts
values. Returns a Git::Raw::Index
object containing the merge result.
diff( [\%opts] )
Compute the Git::Raw::Diff between two trees. Valid fields for the %opts
hash are:
"tree"
If provided, the diff is computed against
"tree"
. The default is the repo's working directory."flags"
Flags for generating the diff. Valid values include:
"reverse"
Reverse the sides of the diff.
"include_ignored"
Include ignored files in the diff.
"recurse_ignored_dirs"
Even if
"include_ignored"
is specified, an entire ignored directory will be marked with only a single entry in the diff. This flag adds all files under the directory as ignored entries, too."include_untracked"
Include untracked files in the diff.
"recurse_untracked_dirs"
Even if
"include_untracked"
is specified, an entire untracked directory will be marked with only a single entry in the diff (core git behaviour). This flag adds all files under untracked directories as untracked entries, too."ignore_filemode"
Ignore file mode changes.
"ignore_submodules"
Treat all submodules as unmodified.
"ignore_whitespace"
Ignore all whitespace.
"ignore_whitespace_change"
Ignore changes in amount of whitespace.
"ignore_whitespace_eol"
Ignore whitespace at end of line.
"patience"
Use the
"patience diff"
algorithm."minimal"
Take extra time to find minimal diff.
"prefix"
"a"
The virtual
"directory"
to prefix to old file names in hunk headers. (Default is L"a".)"b"
The virtual
"directory"
to prefix to new file names in hunk headers. (Default is L"b".)
"context_lines"
The number of unchanged lines that define the boundary of a hunk (and to display before and after)
"interhunk_lines"
The maximum number of unchanged lines between hunk boundaries before the hunks will be merged into a one.
"paths"
A list of paths to constrain diff.
is_tree( )
Returns true.
is_blob( )
Returns false.
AUTHOR
Alessandro Ghedini <alexbio@cpan.org>
LICENSE AND COPYRIGHT
Copyright 2012 Alessandro Ghedini.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.