ostree
version control system for binary files, optimized for managing operating
TLDR
Initialize a repository
SYNOPSIS
ostree command [options]
DESCRIPTION
ostree is a version control system for binary files, optimized for managing operating system root filesystems. Unlike git (which tracks text files), OSTree efficiently handles the large binary files and hard links common in OS trees.
OSTree is the foundation for immutable, image-based operating systems like Fedora Silverblue, Fedora CoreOS, and Endless OS. It enables atomic upgrades, rollbacks, and multiple parallel deployments of the operating system.
The system uses content-addressed storage (like git) with deduplication, making it efficient for storing multiple OS versions that share most files.
PARAMETERS
init
Initialize a new repositorycommit
Create a new commitcheckout
Check out a commit to a directoryls
List files in a commitshow
Show commit metadatalog
Show commit historyrefs
List available refs (branches)summary
Show or update repository summarypull
Pull from a remote repositoryadmin
Manage system deployments (for bootable trees)--repo _path_
Path to the repository--branch _name_
Branch name for operations
CAVEATS
Repository format is not compatible with git. System deployments (bootable trees) require additional configuration through ostree admin. Large commits can take significant disk space initially before deduplication. Not designed for arbitrary binary files; optimized for filesystem trees.
HISTORY
OSTree was developed by Colin Walters at Red Hat, initially for GNOME's continuous integration system. It evolved into the foundation for Fedora's immutable desktop variants and container-focused distributions.
SEE ALSO
rpm-ostree(1), flatpak(1), podman(1)
