DiffX File Format Specification¶ Version: 1.0 Last Updated: May 16, 2025 Copyright: 2021 Beanbag, Inc. 1. Introduction 1.1. Scope 1.2. Filenames 1.3. General File Structure 2. Section Definitions 2.1. Section Headers 2.1.1. Header Options 2.1.2. Section IDs 2.2. Section Order 2.3. Section Types 2.3.1. Container Sections 2.3.2. Content Sections 3. Section Hierarchy 3.1. DiffX Main Section 3.1.1. DiffX Main Header 3.1.2. DiffX Preamble Section 3.1.3. DiffX Metadata Section 3.2. Change Sections 3.2.1. Change Section 3.2.2. Change Preamble Section 3.2.3. Change Metadata Section 3.3. Changed File Sections 3.3.1. Changed File Section 3.3.2. Changed File Metadata Section 3.3.3. Changed File Diff Section 4. Encoding Rules 4.1. Encoding Text 4.2. Encoding Binary Files 5. Binary Diffs 5.1. Encoding/Decoding Basics 5.1.1. Binary Payloads 5.1.2. Line Length Characters 5.2. VCDIFFs 5.2.1. Encoding Logic 5.2.2. Decoding Logic 5.3. Git Literal Binary Diffs 5.3.1. Encoding Logic 5.3.2. Decoding Logic 5.4. Git Delta Binary Diffs 5.4.1. Delta Payload Format 5.4.2. Encoding Logic 5.4.3. Decoding Logic 6. Example DiffX Files 6.1. Diff of Local File 6.2. Diff of File in a Repository 6.3. Diff of Commit in a Repository 6.4. Diff of Multiple Commits in a Repository 6.5. Wrapped Git Diff 6.6. Wrapped CVS Diff 6.7. Wrapped Subversion Property Diff