3 unstable releases
0.2.1 | Sep 9, 2024 |
---|---|
0.2.0 | Aug 10, 2024 |
0.1.0 | Jul 22, 2024 |
#535 in Development tools
146 downloads per month
320KB
8K
SLoC
svn2git
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
- Apache License, Version 2.0 (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.
Dependencies
~25–36MB
~569K SLoC