ostree-checkout1
Check out a commit into a filesystem
Usage
ostree checkout
[OPTIONS ...]
COMMIT
[DESTINATION]
Overview
Checks out the given commit into the filesystem under directory DESTINATION. If DESTINATION is not specified, the COMMIT will become the destination checkout target. If COMMIT destination already exists, command will error unless --union option is selected.
Options
-
--user-mode, -U -
Do not change file ownership or initialize extended attributes.
-
--subpath="PATH" -
Checkout sub-directory PATH.
-
--union -
Keep existing directories and unchanged files, overwrite existing files.
-
--union-add -
Keep existing directories and files.
-
--union-identical -
Like --union, but error out if a file would be replaced with a different file. Add new files and directories, ignore identical files, and keep existing directories. Requires -H.
-
--whiteouts -
Process whiteout files (Docker style).
-
--process-passthrough-whiteouts -
Enable overlayfs whiteout extraction into 0:0 character devices. Overlayfs whiteouts are encoded inside ostree as .ostree-wh.filename and extracted as 0:0 character devices. This is useful to carry container storage embedded into ostree.
-
--allow-noent -
Do nothing if specified path does not exist.
-
--from-stdin -
Process many checkouts from standard input.
-
--from-file="FILE" -
Process many checkouts from input file.
-
--fsync="POLICY" -
POLICY is a boolean which specifies whether fsync should be used or not. Default to true.
-
--require-hardlinks, -H -
Do not fall back to full copies if hardlinking fails.
-
--force-copy-zerosized, -z -
This option does nothing; the functionality is now always on by default.
-
--force-copy, -C -
Never hardlink (but may reflink if available).
-
--bareuseronly-dirs, -M -
Suppress mode bits outside of 0775 for directories (suid, world writable, etc.).
-
--skip-list="FILE" -
Skip checking out the absolute file paths listed in FILE, one per line.
-
--selinux-policy -
Set SELinux labels based on policy in root filesystem PATH (may be /). This implies --force-copy.
-
--composefs -
Only generate a composefs, not a directory.
-
--composefs-noverity -
Only generate a composefs, not a directory; fsverity digests will not be included. This is best used for "opportunistic" use of composefs.
Examples
$ ostree checkout my-branch
$ ls
file1 file2 my-branch
Releases
6 releases since Debian 9 (Stretch); the text changed 5 times.
--bareuseronly-dirs since Debian 11 (Bullseye);
--composefs since Debian 13 (Trixie);
--composefs-noverity since Debian 13 (Trixie);
--force-copy since Debian 11 (Bullseye);
--force-copy-zerosized since Debian 11 (Bullseye);
--fsync since Debian 11 (Bullseye);
--process-passthrough-whiteouts since Debian 12 (Bookworm);
--require-hardlinks since Debian 11 (Bullseye);
--selinux-policy since Debian 11 (Bullseye);
--skip-list since Debian 11 (Bullseye);
--union-add since Debian 10 (Buster);
--union-identical since Debian 10 (Buster);
--whiteouts since Debian 11 (Bullseye);
-C since Debian 11 (Bullseye);
-H since Debian 11 (Bullseye);
-M since Debian 11 (Bullseye);
-U since Debian 11 (Bullseye);
-z since Debian 11 (Bullseye).
-u until Debian 10 (Buster).