Skip to main content
The .wit directory contains all repository data and metadata.

Overview

Key Files

Points to the current branch or commit. When on a branch:
Detached HEAD:

config

Repository configuration in INI format:

index

The staging area in JSON format:

journal.json

Operation history for wit undo:

Directories

objects/

Content-addressable storage for all data. Object types:
  • blob - File contents
  • tree - Directory listings
  • commit - Commit metadata
  • large-file - Large file manifest
Organization:

refs/

References to commits (branches and tags). heads/ - Local branches:
tags/ - Tags:
remotes/ - Remote tracking branches:

hooks/

Executable scripts triggered by operations.

branch-states/

Auto-stashed changes per branch (wit-specific):

logs/

Reference logs (reflog) for recovery:

Object Storage Details

Object Format

Objects are compressed and stored by hash:
Example blob:
Example tree:

Large File Storage

Files above threshold are stored as chunks:
Manifest:

Comparison with Git

Troubleshooting

Run integrity check:
This verifies all objects.
Check the reflog:
Or the journal:
Run garbage collection: