Philippe Bruhat (BooK) > Git-FastExport-0.106 > Git::FastExport

Download:
Git-FastExport-0.106.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  3
View/Report Bugs
Module Version: 0.106   Source  

NAME ^

Git::FastExport - A parser for git fast-export streams

SYNOPSIS ^

    use Git::Repository;
    use Git::FastExport;

    # get the fast-export stream from a Git::Repository
    my $r  = Git::Repository->new();
    my $fh = $r->command(qw( fast-export --progress=1 --date-order --all ))->stdout;

    # create the parser object
    my $export = Git::FastExport->new($fh);

    # extract blocks from the fast-import stream
    while ( my $block = $export->next_block() ) {

        # do something with $block

    }

DESCRIPTION ^

Git::FastExport is a module that parses the output of git-fast-export and returns Git::FastExport::Block objects that can be inspected or modified before being eventually passed on as the input to git-fast-import.

METHODS ^

This class provides the following methods:

new

    my $export = Git::FastExport->new($fh);

The constructor takes an open filehandle and returns a Git::FastExport object attached to it.

next_block

    my $block = $export->next_block();

Returns the next block in the git-fast-export stream as a Git::FastExport::Block object.

Return nothing at the end of stream.

This methods reads from the filehandle of the Git::FastExport object.

ACKNOWLEDGEMENTS ^

The original version of this module was created as part of my work for BOOKING.COM, which authorized its publication/distribution under the same terms as Perl itself.

COPYRIGHT ^

Copyright 2008-2015 Philippe Bruhat (BooK), All Rights Reserved.

LICENSE ^

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: