svn2git

Crates.iosvn2git
lib.rssvn2git
version0.2.1
sourcesrc
created_at2024-07-22 19:48:24.077217
updated_at2024-09-09 11:58:58.658549
descriptionA Subversion-to-Git repository converter
homepage
repositoryhttps://github.com/eduardosm/svn2git
max_upload_size
id1311714
size517,914
Eduardo Sánchez Muñoz (eduardosm)

documentation

README

svn2git

GitHub Actions Status MSRV

A Subversion to Git repository converter

Features

  • Uses Subversion dump files as input.
    • Supports version 2 (without deltas) and version 3 (with deltas).
    • It can be optionally compressed with gzip, bzip2, XZ, zstd or LZ4.
  • It does not require to have Git installed in the same machine.
  • Efficient. Given the old GCC Subversion repository (280157 revisions), provided as a version 3 (with deltas) dump compressed with XZ:
    • It takes 50 minutes to finish with an Intel i7-8750H CPU and a SATA SSD.
    • It uses up to 2.2 GiB of RAM and 6.5 GiB of disk during conversion.
    • The resulting Git repository takes 2.8 GiB of disk, without needing to run git repack.

Install

Pre-built binaries

You can download binaries for Linux and Windows from the GitHub releases page.

Dependencies

svn2git does not have runtime dependencies, but you will likely need Subversion (to prepare the origin repository) and Git (to do anything with the result of the conversion).

Build from source

If you have a Rust toolchain installed, you can clone this repository and build a working executable:

cargo build --release

Usage

Check the documentation and tutorial from the book.

License

Licensed under either of

at your option.

Commit count: 0

cargo fmt