OSTREE-CHECKOUT(1)
π NAME π
Okay so this is the ostree checkout page β manual name OSTREE CHECKOUT(1), same energy, weβre in the right place. β¨
ostree-checkout β check out a commit into a filesystem, bestie. Thatβs the whole job. π
β¨ SYNOPSIS β¨
ostree checkout [OPTIONS...] {COMMIT} [DESTINATION]
πΈ DESCRIPTION πΈ
Hereβs the tea: ostree checkout checks out the given COMMIT into the filesystem under directory DESTINATION. If DESTINATION is not specified, then COMMIT will become the destination checkout target. Main character behavior, honestly. π
If the COMMIT destination already exists, the command will error unless the --union option is selected. Thatβs the vibe check, so donβt get caught out. β οΈ
π OPTIONS π
--user-mode,-Uβ Do not change file ownership or initialize extended attributes. Weβre leaving those alone, periodt. π«Ά--subpath="PATH"β Checkout sub-directoryPATH. Scope it to just that little corner. π¦--unionβ Keep existing directories and unchanged files, overwrite existing files. Merge energy, but make it filesystem. π«--union-addβ Keep existing directories and files. No overwrite drama. πΈ--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. (Yes,-His required β iykyk.) π₯--whiteoutsβ Process whiteout files (Docker style). Container-core. π³--process-passthrough-whiteoutsβ Enable overlayfs whiteout extraction into0:0character devices. Overlayfs whiteouts are encoded inside ostree as.ostree-wh.filenameand extracted as0:0character devices. This is useful to carry container storage embedded into ostree. Ngl, thatβs a whole vibe. π§--allow-noentβ Do nothing if specified path does not exist. No path, no problem. π--from-stdinβ Process many checkouts from standard input. Bulk mode activated. π₯--from-file="FILE"β Process many checkouts from input file. Same energy, file edition. π--fsync="POLICY"βPOLICYis a boolean which specifies whether fsync should be used or not. Default to true. Yes, true is the default β noted. β--require-hardlinks,-Hβ Do not fall back to full copies if hardlinking fails. Hardlinks or bust. π--force-copy-zerosized,-zβ This option does nothing; the functionality is now always on by default. Itβs giving placeholder flag. π--force-copy,-Cβ Never hardlink (but may reflink if available). Copy girl summer. π--bareuseronly-dirs,-Mβ Suppress mode bits outside of0775for directories (suid, world writable, etc.). Lock it down, bestie. π--skip-list="FILE"β Skip checking out the absolute file paths listed inFILE, one per line. A little skip list, very organized. π--selinux-policyβ Set SELinux labels based on policy in root filesystemPATH(may be/). This implies--force-copy. SELinux girlies rise. π‘οΈ--composefsβ Only generate a composefs, not a directory. Composefs only, no 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. No fsverity digests in this one. π
π¦ EXAMPLE π¦
Hereβs the iconic little sequence:
$ ostree checkout my-branch
$ ls
file1 file2 my-branch
And look at that β my-branch is right there next to file1 and file2. Slay. π
Thatβs the whole OSTREE CHECKOUT(1) page, bestie. Footer source/version says OSTree, and thereβs no date in this one β so no invented date, just the page and good vibes. π«Άππ
π¦ where this page comes from
- arch rolling: ostree 2026.6-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms