OSTREE-COMMIT(1)
β¨ NAME β¨
hey bestie, welcome to the OSTREE COMMIT(1) page β manual name is ostree commit, and it is literally about committing a new revision. π
π SYNOPSIS π
ostree commit [OPTIONS...] --branch= {BRANCH} [PATH]
π DESCRIPTION π
okay so this lets you commit changes to a branch, and specifying the branch is required β no branch, no commit, periodt. The command prints the checksum of a successful commit, so you get that little receipt of slay. β¨
π OPTIONS π
bestie, hereβs the whole menu, no skips, no βyou donβt need that oneβ energy:
--subject,-s="SUBJECT"β one line subject. (optional)--body,-m="BODY"β full description. (optional)--body-file,-F="FILE"β full commit description from a file. (optional)--editor,-eβ open a text editor for the commit description. It usesOSTREE_EDITOR,VISUAL,EDITOR, orvi, in descending order of preference. The commit is aborted if the message is left empty.--branch,-b="BRANCH"β branch. Required unless--orphanis given.--parent="COMMIT"β parent checksum, or"none"to explicitly use no parent. If not specified,BRANCHis used as parent (no parent in caseBRANCHdoes not exist).--treewithdir=PATH,tar=TARFILE, orref=COMMITβ overlay the given argument as a tree. When committing an archive, theTARFILEcan be specified as-to read the archive from standard input.--base="REV"β start from the content in a commit. This differs from--tree=ref=REVin that no commit modifiers are applied. This is usually what you want when creating a derived commit. This is also used for--selinux-policy-from-base.--add-metadata-string="KEY=VALUE"β add a key/value pair to metadata. Can be specified multiple times.--add-metadata="KEY=VALUE"β add a key/value pair to metadata, where theKEYis a string, andVALUEisg_variant_parse()formatted. Can be specified multiple times.--keep-metadata="KEY"β keep metadataKEYand its associatedVALUEfrom parent. Can be specified multiple times.--add-detached-metadata-string="KEY=VALUE"β add a key/value pair to detached metadata.--owner-uid="UID"β set file ownership user id.--owner-gid="GID"β set file ownership group id.--no-xattrsβ do not import extended attributes.--selinux-labeling-epoch0 | 1β when SELinux labeling is enabled, epoch 1 ensures that/usr/etcis labeled as if it was/etc.--bootableβ inject standard metadata for a bootable Linux filesystem tree.--link-checkout-speedupβ optimize for commits of trees composed of hardlinks into the repository.--tar-autocreate-parentsβ when loading tar archives, automatically create parent directories as needed.--skip-if-unchangedβ if the contents are unchanged from previous commit, do nothing.--consumeβ when committing from a local directory (i.e. not an archive or--tree=ref), assume ownership of the content. This may simply involve deleting it, but if possible, the content may simply berename()ed into the repository rather than creating a new copy.--statoverride="PATH"β file containing list of modifications to make permissions (file mode in decimal, followed by space, followed by file path). The specified mode is ORed with the fileβs original mode unless preceded by=.--skip-list="PATH"β file containing list of file paths to skip (one path per line).--table-outputβ output more information in aKEY: VALUEformat.--generate-sizesβ generate size information along with commit metadata.--gpg-sign="KEY-ID"β GPG Key ID with which to sign the commit (if built with GPGME - GNU Privacy Guard Made Easy). To use a specific subkey, pass the subkeyβs fingerprint followed by!.--gpg-homedir="HOMEDIR"β GPG home directory to use when looking for keyrings (if built with GPGME - GNU Privacy Guard Made Easy).--timestamp="TIMESTAMP"β override the timestamp of the commit toTIMESTAMP.--orphanβ create a commit without writing to a ref (branch).--fsync="POLICY"βPOLICYis a boolean which specifies whetherfsyncshould be used or not. Default totrue.-s,--sign-typeβ use particular signature engine. Currently availableed25519,spki, anddummysignature types. The default ised25519.--sign-from-file="PATH"β this will read a key (corresponding to the provided--sign-typefrom the provided path. The encoding of the key depends on signature engine. Fored25519the key should be base64 encoded, forspkiit should be in PEM format, and fordummyit should be an ASCII-string.--sign="KEY-ID"β > β οΈ in new code, avoid using this because passing private keys via command line arguments are prone to leakage in logs and process listings. TheKEY-IDis:- for
ed25519andspki: base64-encoded secret key for commit signing. - for
dummy: ASCII-string used as secret key.
- for
π EXAMPLE π
$ ostree commit --branch=my-branch --subject="Initial commit"
67e382b11d213a402a5313e61cbc69dfd5ab93cb07fbb8b71c2e84f79fa5d7dc
π thatβs the whole OSTREE COMMIT(1) page, bestie β footer says source/version OSTree, and thereβs no date printed, so Iβm not inventing one. bye π
π¦ 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