git-backpan-init (1) - Linux Manuals

git-backpan-init: Initialize a repository for a CPAN module with full history


git-backpan-init - Initialize a repository for a CPAN module with full history from the backpan.


    git backpan-init [ --help | --man ] [ --mkdir <directory> ] [ --force ] Foo::Bar


This command is like "cpan-init" except it imports all the historical versions of a module as well, allowing you to run "git bisect" or to browse history.

The name of the module can be written with double-colons or dashes (i.e., Foo::Bar or Foo-Bar).

Unless the -force option is used, the command will abort if a git repository is found to be already present in the directory.


--mkdir directory
Creates a sub-directory and create the git repository there instead than in the current directory. If no directory name is given, figures one out based on the name of the module.
--force, -f
Forces the imports, even if a git repository was already present in the directory.
--help, -h
Prints the synopsis and valid options and exits.
Prints the man page and exits.


Most of the time, you want to use git backpan-init like this:

    % cd ~/work/
    % git backpan-init -mkdir Foo::Bar


This document describes git-backpan-init version 0.2.1


When importing a package history with git-backpan-init, version checking will be automatically turned off. This is to circumvent the cases where, e.g., version 0.38.1 (morphed into 0.038001 by the module version) follows version 0.38. We are making the (hopefully reasonable) assumption that the chronological order reported by the Backpan trumps all.

If a version of the package can't be extracted, git-backpan-init will issue a warning and skip to the next version.

Please report any bugs or feature requests to "bug-git-cpan-patch [at]", or through the web interface at <>.


Yanick Champoux "<yanick [at]>"

Yuval Kogman "<nothingmuch [at]>"


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