Summary

A tool for editing version-control repository history.

reposurgeon enables risky operations that version-control systems don't want to let you do, such as editing past comments and metadata and removing commits. It works with any version control system that can export and import git fast-import streams, including git, hg, fossil, bzr, CVS, RCS, and src. It can also read Subversion dump files directly and can thus be used to script production of very high-quality conversions from Subversion to any supported DVCS.

Resources


COPYINGproject license
TODOto-do file
reposurgeon-3.28.tar.gzgzipped source tarball
NEWSproject news
reposurgeon-3.28.md5source tarball MD5 checksum
READMEroadmap file
reporting-bugs.htmlHow to report bugs
repodiffer.htmlHTML rendering of repodiffer.1
reposurgeon.htmlHTML rendering of reposurgeon.1
repotool.htmlHTML rendering of repotool.1
dvcs-migration-guide.htmlDVCS migration HOWTO
features.htmlHow reposurgeon wins
conversion.mkGeneric makefile for DVCS conversions using reposurgeon

The project repository is at https://gitlab.com/esr/reposurgeon.

Project statistics are available at OpenHub.

There is a project IRC channel.

If you appreciate this code (and especially if you make money by using it) please leave me a tip on Gratipay.

Recent Changes

     Make repotool honor the mirror directory argument for CVS.
     Fix gitlab issue 4: even successful CVS export returns error code.
     Fix some name lookup issues from the cache needing invalidation.
     Implement and document that action stamps from author dates are preferred.
     New --filter option to mailbox_out for selective emission of headers.
     Fix gitlab issue #9: blank lines in svn:ignore misinterpreted.