NAME

Git::SVNReplay - replay git commits into a throwaway svn repo

SYNOPSIS

Git::SVNReplay->new( git_repo =>
    'git://github.com/jettero/git-svn-replay.git')

    ->setup_git_in_svnco
        ->run;

DESCRIPTION

Normally you would just invoke git-svn-replay, although, this module happens to contain most of the code for the command. As a consequence, this pod is mainly a list of functions.

new

All the defaults this function uses are available in $Git::SVNReplay::DEFAULTS should you wish to adulterate them. The options the function understands are as follows:

db_file => "replay.rdb"

The location of the replay database (DBM::Deep).

patch_format => '%s [%h]%n%n%b%n%aN <%aE>%n%ai%n%H'

The format of the message (.msg) fed to svn during a commit.

src_branch => "master"

The name of the branch you wish to pull from git_repo.

mirror_branch => "mirror"

The name of the local branch you wish to use, default is mirror rather than master.

git_repo => "g.repo"

The location of the git repo you wish to pull from. By default, it assumes you're super paranoid and cloned the repo you wish to pull from into a local directory: g.repo (probably not necessary).

svn_repo => "s.repo"

The location of the svn repository.

svn_co => "s.co"

The location of the checked out copy of the svn repository.

set

Takes the same arguments as new() and returns itself so you may use this function in function chains.

setup_git_in_svnco

Setup the git repo inside the checked out svn. If it's already there, do nothing. Returns itself so you may use the function in chains.

run

Replay all the commits not yet commited to the svn. Returns itself so you may use the function in chains.

create_svn_repo

Create the svn repo, if necessary. Returns itself so it may be used in chains.

add_svn_dir

Adds a directory to the checked out svn, if it's not already there, and returns itself for chains.

quiet

Turn off all Term::GentooFunctions racket. Returns itself so you may use the function in chains.

REPORTING BUGS

You can report bugs either via rt.cpan.org or via the issue tracking system on github. I'm likely to notice either fairly quickly.

AUTHOR

Paul Miller <jettero@cpan.org>

COPYRIGHT

Copyright 2009 Paul Miller -- released under the GPL

SEE ALSO

perl(1), git(1), svn(1), git-svn-replay, DBM::Deep, IPC::System::Simple