Skip to main content
Open Source • Apache 2.0 + MIT

Version Control, Reimagined for Media

Dits is a distributed version control system built from the ground up for video production, game development, and large binary files. Finally, version control that understands your workflow.

Our Mission

We believe every creative professional deserves version control that works for them — not against them. Git revolutionized how developers collaborate, but it was never designed for the massive files that define modern media production.

Dits exists to bridge this gap: providing the full power of distributed version control to video editors, game developers, 3D artists, and anyone who works with large binary files. No workarounds, no extensions, no compromises.

Why We Built Dits

The story of Dits began with frustration. Working on video projects with distributed teams, we constantly hit the limits of existing tools. Git LFS felt like a band-aid, Perforce required expensive infrastructure, and nothing understood the unique patterns of video files.

We asked ourselves: what if we could build version control specifically for media? What if we could leverage content-defined chunking to find the actual changes in video files? What if we could make terabyte repositories feel as fast as kilobyte ones?

Dits is the answer to those questions. Built in Rust for performance, designed with media workflows in mind, and open source so everyone can benefit.

$ dits add project.prproj
$ dits add media/

Adding 847 files (1.2 TB)
Chunking: ████████████ 100%
Deduplication: 67% (412 GB saved)

$ dits commit -m "Final cut v3"
[main abc1234] Final cut v3
  847 files, 788 GB (net)

The Problem with Existing Tools

Problem: Git can't handle large files efficiently

Solution: Content-defined chunking with deduplication

Problem: Storing multiple versions wastes space

Solution: Only unique chunks are stored

Problem: Cloning large repos takes forever

Solution: On-demand file hydration with VFS

Problem: Binary files don't merge

Solution: File locking prevents conflicts

Problem: No video-specific optimization

Solution: Keyframe-aligned chunking for video

How Dits Works

Instead of storing files as single objects, Dits breaks them into content-defined chunks that can be shared across files and versions.

Chunk
Files are split into variable-size chunks using content-defined boundaries. Changes only affect nearby chunks, so small edits don't invalidate the entire file.
Hash
Each chunk is identified by its BLAKE3 hash. Identical chunks share the same hash and are stored only once, regardless of which files contain them.
Deduplicate
Similar footage, multiple versions, and shared content automatically deduplicate. A 4K timeline with 100 cuts from the same source? Minimal overhead.

How Dits Compares

See how Dits stacks up against existing version control solutions for media and large file workflows.

FeatureDitsGitGit LFSPerforce
Large file handling
Native, no extensions needed
Requires Git LFS
Pointer files, separate storage
Centralized model
Content deduplication
Automatic, cross-file
No deduplication
Full file copies
Limited
Partial clone/sparse checkout
First-class VFS support
Limited, complex setup
Manual file selection
Workspace views
File locking
Built-in, distributed
No native support
Basic locking
Exclusive checkouts
Distributed architecture
Fully distributed
Fully distributed
Hybrid (files centralized)
Centralized
Open source
Apache 2.0 + MIT
GPL v2
MIT
Proprietary
Video-optimized chunking
Keyframe-aligned
Not applicable
Full file storage
Not specialized

Built for Creative Professionals

Whether you're a solo creator or part of a large studio, Dits adapts to your workflow.

Video Production Teams
From solo YouTubers to major studios. Track every cut, every render, every revision with confidence.
Documentary projects
Commercial production
VFX pipelines
Color grading workflows
Game Developers
Manage textures, models, audio, and cinematics alongside your code in one unified workflow.
Asset management
Build pipelines
Cinematic sequences
Localization files
Creative Agencies
Collaborate on design files, brand assets, and multimedia projects without the chaos.
Brand asset libraries
Campaign materials
Client deliverables
Archive management
Enterprise Media
Scale version control across departments with fine-grained access control and audit trails.
Broadcast archives
Compliance tracking
Multi-site collaboration
Legacy migration

Built with Modern Technology

We've chosen the best tools for performance, reliability, and security.

Rust

Core engine for performance and safety

Memory-safe systems programming with zero-cost abstractions. Rust ensures reliability without sacrificing speed.

BLAKE3

Fast cryptographic hashing

10x faster than SHA-256 while maintaining cryptographic security. Enables rapid content verification at scale.

FastCDC

Content-defined chunking algorithm

Intelligent file splitting that finds natural boundaries. Insertions and deletions only affect nearby chunks.

FUSE/ProjectedFS

Virtual filesystem support

Files appear local but download on-demand. Work with terabytes without filling your disk.

QUIC

Modern transport protocol

Multiplexed connections, built-in encryption, and improved performance over unreliable networks.

Roadmap

We're actively developing Dits and committed to transparency about our progress.

Alpha
● Active Development
Core Functionality
CLI implementation, basic operations, local chunking and deduplication
  • Init, add, commit, log
  • Content-defined chunking
  • BLAKE3 hashing
  • Local storage backend
Beta
○ Coming Soon
Collaboration Features
Remote operations, file locking, and basic networking
  • Push/pull operations
  • File locking
  • Remote tracking
  • Conflict resolution
1.0
○ Planned
Production Ready
Virtual filesystem, enterprise features, and platform support
  • FUSE/ProjectedFS VFS
  • Windows/macOS/Linux
  • Access control
  • Performance optimization
Future
○ Planned
Advanced Features
P2P networking, cloud integrations, and specialized tools
  • QUIC-based P2P
  • Cloud storage backends
  • CI/CD integrations
  • NLE plugins

Our Values

Open Source

Dual-licensed under Apache 2.0 and MIT. Free to use, modify, and distribute. Your data belongs to you.

Community Driven

Built for and with the media community. Your feedback shapes the roadmap. Join our Discord to participate.

User First

Designed for real workflows. Git-like commands make adoption easy. We listen to creators, not marketers.

Join the Community

Dits is open source and community-driven. There are many ways to get involved.

Core Development
Contribute to the Rust codebase, fix bugs, and implement new features.
Get Started
Documentation
Improve guides, write tutorials, and help new users get started.
Get Started
Community Support
Answer questions, share knowledge, and help grow the community.
Get Started
Testing & Feedback
Test new features, report bugs, and provide valuable user feedback.
Get Started

Star us on GitHub

Help spread the word by starring our repository

Star on GitHub

Ready to Take Control of Your Media?

Download Dits and experience version control built for how you actually work. It's free, open source, and ready to handle your biggest projects.