new()
Create a new object database.
open($directory)
Create a new object database and automatically add the two default backends. $directory should be the
path to the 'objects' directory.
backend_count()
Get the number of ODB backend objects.
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.
foreach($repo,$callback)
Run $callback for every object available in the database. The callback receives a single argument, the
OID of the object. A non-zero return value will terminate the loop.
add_backend($backend,$priority)
Add a custom backend to the ODB. The backends are checked in relative ordering, based on the value of
$priority.
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.
read($id)
Read an object from the database. Returns a Git::Raw::Odb::Object or "undef" if the object does not
exist.
write($data,type)
Write an object directly to the database. Returns the OID of the object. $type should be one of the
values as defines in the constants section of Git::Raw::Object.
hash($data,$type)
Determine the object-ID (sha1 hash) of $data. $type should be one of the values as defined in the
constants section of Git::Raw::Object.