archives2git is intended to recreate a poor-man’s history from the release archives of a project. It is an sh script that commits the given file archives to a Git repository as a series of commits; by default the commit (sub-)trees will replicate the contents of their corresponding archive.


For the documentation see the manuals of archives2git(1) and dsc2git(1) (or the help message outputs), then look inside the configuration file example .archives2gitrc and finally inside the script.

Basic usage:

$ cd git-repo # may be a subdir of the toplevel of a repo
$ GIT_AUTHOR_NAME="Firstname Lastname" GIT_AUTHOR_EMAIL=user@host \
  archives2git --tag ../oldproject-?.??.tar.gz

The file NEWS describes the important user visible changes. The project is available online at

Limitions & Bugs

  • Trailing newlines in file names are not supported.


  • POSIX sh (tested only with dash but BSD ash should be compatible).

  • sed with option -r for Extended Regular Expressions (GNU and BSD implementations are compatible).

  • mktemp (GNU and BSD implementations are compatible).

  • Git of course.

  • aunpack from atool or from gnatool is the default extraction command used.

  • pristine-tar can be used to embed the archives in the repository.

  • SHelMFiSH/HelpMessage and pod2man are required to build the manpage.

Similar programs

Credits & License

archives2git was written by G.raud Meyer.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. The full text of the license can be found in the root directory of the project sources, in the file COPYING. Otherwise see