Dits Documentation
Welcome to the Dits documentation. Dits is a comprehensive, production-ready version control system with 120+ automated tests covering 80+ file formats. Built for creative industries with Git-like workflows for massive binary assets - from video production to game development to 3D animation. Features hybrid Git+Dits storage, Redis caching, P2P networking, and enterprise-grade security.
Why Dits Exists
The Problem
- Git LFS is a bandaid, not a solution
- Large files get re-uploaded entirely for tiny changes
- No deduplication across versions or projects
- Manual versioning with "final_v27.mp4" files
- No proper branching/merging for creative assets
- Binary conflicts require manual resolution
- 1TB+ projects overwhelm traditional systems
- No testing for creative workflows
The Dits Solution
- Content-defined chunking deduplicates automatically
- Only changed chunks transfer across network
- Video-aware optimizations (keyframe alignment)
- Git-like interface familiar to developers
- Local-first with optional cloud storage
- Hybrid Git+Dits storage for optimal performance
- 120+ automated tests for 80+ file formats
- Git operations work on binary creative assets
- 1TB+ repository support with Redis caching
- P2P networking and enterprise security
Quick Reference
Basic Workflow
# Initialize a new repository
dits init
# Add files to staging
dits add video.mp4
dits add footage/
# Check status
dits status
# Commit changes
dits commit -m "Add raw footage"
# View history
dits logBranching
# Create a branch
dits branch feature/color-grade
# Switch to branch
dits switch feature/color-grade
# Merge branch
dits switch main
dits merge feature/color-gradeRemote Operations
# Add a remote
dits remote add origin /path/to/remote
# Push changes
dits push origin main
# Pull changes
dits pull origin main
# Clone a repository
dits clone /path/to/repo my-projectImplementation Status
Dits is production-ready with comprehensive testing and enterprise features. All 60+ commands are fully implemented with 120+ automated tests covering 80+ file formats:
Complete VCS (60+ Commands)
Full Git-compatible workflow + advanced operations: branching, merging, rebasing, stashing, worktrees, hooks, maintenance
Comprehensive Media Support
80+ file formats tested: MP4/MOV video, 3D models (OBJ/FBX/glTF), game assets (Unity/Unreal), images, audio, custom formats
Enterprise Features
Hybrid storage, Redis caching, P2P networking, encryption, audit logging, VFS mounting, cross-platform support
Testing Infrastructure
120+ Automated Tests
- Git-inspired shell script framework
- Creative asset format validation
- Git operations on binary files
- Cross-platform compatibility
- 1TB workload simulation
Quality Assurance
- Chainlint for test script validation
- Performance regression testing
- Memory leak detection
- Network failure simulation
- Corruption recovery testing
Key Features
Core Technology
- Content-Defined Chunking: FastCDC streaming algorithm with 90% memory reduction, unlimited file sizes, and video-aware optimizations
- Hybrid Git+Dits Storage: Optimal performance for text files (Git) and binary assets (Dits)
- BLAKE3 Cryptographic Hashing: Fast, parallelizable hashing for content addressing
- Redis Caching Layer: Distributed caching for massive repository performance
- QUIC Transport: High-performance UDP-based networking with resumable transfers
Creative Workflow Support
- 80+ File Formats: Comprehensive support for 3D models, game assets, video, audio, images
- Git Operations on Binaries: Diff, merge, blame, reset work on creative assets
- Virtual Filesystem: FUSE/Dokany mounting for on-demand access
- Distributed Locking: Redlock algorithm prevents binary file conflicts
- P2P Networking: Decentralized collaboration and asset sharing
- Enterprise Security: AES-256-GCM encryption, audit logging, RBAC
Testing & Quality Assurance
- 120+ Automated Tests: Git-inspired shell script framework covering all features and file formats
- Cross-Platform Testing: Windows, macOS, Linux filesystem and path compatibility
- Performance Regression: Benchmarks and scaling validation for enterprise workloads
- Recovery Testing: Corruption detection, automatic repair, and data integrity validation
- Stress Testing: 1TB+ workload simulation and extreme concurrency scenarios
Open Source & Community
Dits is proudly open source and welcomes contributions from the community. Whether you're a developer, creative professional, or just curious about version control for large files, there are many ways to get involved:
- Contribute Code: GitHub Repository - Rust implementation with comprehensive documentation
- Report Issues: GitHub Issues - Bug reports, feature requests, and technical discussions
- Join Discussions: GitHub Discussions - Community support, ideas, and general conversation
- Documentation: Contributing Guide - Help improve documentation and tutorials
Getting Help
Need help getting started or troubleshooting? Here are your resources:
- Check the CLI Reference for command details
- Read the Core Concepts to understand how Dits works
- Browse the Troubleshooting Guide for common issues
- Join GitHub Discussions for community support
- Report bugs on GitHub Issues