In Pachyderm, commits snapshot and preserve the state of files and directories in a repository at a point in time.
Unlike Git, Pachyderm commits are centralized and transactional. You can create a commit with
pachctl start commit and save it with
pachctl finish commit. Once the commit is closed its contents are immutable. Commits may be chained together to represent a sequence of states.
All commits have an alphanumeric ID, and you can reference a commit with
<repo>@<commitID>. Each commit has an origin that indicates why it was produced (USER or AUTO).
Global Commits #
A commit with global scope (global commit) represents the set of all provenance-dependent commits sharing the same ID.
A commit with a more focused scope (sub-commit) represents the “Git-like” record of one commit in a single branch of a repository’s file system.