copy_on_write

Crates.iocopy_on_write
lib.rscopy_on_write
version0.1.3
sourcesrc
created_at2023-11-01 15:14:24.849157
updated_at2023-12-13 11:00:32.35384
descriptionCopy-On-Write Rust implementation.
homepage
repository
max_upload_size
id1021178
size54,295
Nacho Aldama (nachoaldamav)

documentation

README

CopyOnWrite (CoW) in Rust

Status

OS File System Status
Linux btrfs E2E Linux (btrfs)
Linux xfs E2E Linux (xfs)
Windows ReFS E2E Windows (ReFS)
MacOS APFS E2E MacOS (APFS)

Note: Linux and Windows tests run in Google Cloud VMs to ensure the correct file system is used. MacOS tests run only GitHub Actions.

Description

This project is an implementation of Copy-On-Write (CoW) or reflinks in Rust. It provides file copy functionalities that are optimized for different file systems and operating systems.

Features

  • Unix/MacOS: Uses the reflink-copy crate for CoW support.
  • Windows: Native implementation supporting ReFS drives (Windows Server 2016+ and Windows 11 Dev Drives).

Usage Demo

Here's a simple demo showing how to use this library.

use copy_on_write::reflink_file_sync;

reflink_file_sync(src, dst);
Commit count: 0

cargo fmt