View on
MetaCPAN
Jacques Germishuys > Git-Raw-0.77 > Git::Raw::Mempack

Download:
Git-Raw-0.77.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.77   Source   Latest Release: Git-Raw-0.79

NAME ^

Git::Raw::Mempack - Git in-memory object database class

VERSION ^

version 0.77

SYNOPSIS ^

        use Git::Raw;

        my $mempack = Git::Raw::Mempack -> new;
        my $odb = $repo -> odb;
        $odb -> add_backend($mempack, 99);

        # Create blobs, trees and commits...

        # Index the packfile and persist
        my $odb_path = catfile($repo -> path, 'objects');
        my $tp = Git::Raw::TransferProgress -> new;
        my $indexer = Git::Raw::Indexer -> new($odb_path, $odb);

        my $pack = $mempack -> dump($repo);
        $indexer -> append($pack, $tp);
        $indexer -> commit($tp);

DESCRIPTION ^

A Git::Raw::Mempack represents a git in-memory object database.

METHODS ^

new( )

Create a new mempack backend.

dump( $repo )

Dump all the queued in-memory writes to a packfile. Returns the contents of the packfile. It is the caller's responsibility to ensure that the generated packfile is available to the repository.

reset( )

Reset the mempack by clearing all the queued objects.

AUTHOR ^

Jacques Germishuys <jacquesg@striata.com>

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.

syntax highlighting: