package Git::Raw::Odb;
$Git::Raw::Odb::VERSION = '0.72';
use strict;
use warnings;
use Git::Raw;
use Git::Raw::Odb::Backend;
=head1 NAME
Git::Raw::Odb - Git object database class
=head1 VERSION
version 0.72
=head1 DESCRIPTION
A L<Git::Raw::Odb> represents a git object database.
B<WARNING>: The API of this module is unstable and may change without warning
(any change will be appropriately documented in the changelog).
=head1 METHODS
=head2 new( )
Create a new object database.
=head2 open( $directory )
Create a new object database and automatically add the two default backends.
C<$directory> should be the path to the 'objects' directory.
=head2 backend_count( )
Get the number of ODB backend objects.
=head2 refresh( )
Refresh the object database to load newly added files. If the object databases
have changed on disk while the library is running, this function will force a
reload of the underlying indexes. Use this method when you're confident that an
external application has tampered with the ODB.
=head2 add_backend( $backend, $priority )
Add a custom backend to the ODB. The backends are checked in relative ordering,
based on the value of C<$priority>.
=head2 add_alternate( $backend, $priority )
Add an alternate custom backend to the ODB. Alternate backends are always
checked for objects after all the main backends have been exhausted. Writing is
disabled on alternate backends.
=head1 AUTHOR
Jacques Germishuys <jacquesg@striata.com>
=head1 LICENSE AND COPYRIGHT
Copyright 2016 Jacques Germishuys.
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.
=cut
1; # End of Git::Raw::Odb