Glossary and domain concepts¶
This glossary defines key terminology used throughout the Git reference guides, automation tooling, and static site publication architecture.
Git and repository mechanics¶
Blob¶
A Git object type that stores raw file contents. Blobs do not store file names, modification dates, or directory paths.
Tree¶
A Git object type representing a directory. A tree maps file names and permissions to blob object hashes or nested tree hashes.
Commit object¶
An immutable snapshot containing a pointer to a root tree, zero or more parent commit hashes, author metadata, and a commit message.
Loose object¶
An uncompressed or individually zlib-compressed object file stored under .git/objects/xx/ by its 40-character SHA-1 hash.
Packfile and pack index (.idx)¶
A consolidated .pack archive containing multiple compressed Git objects, paired with a .idx index file for fast binary lookup.
git fsck¶
A Git plumbing utility that verifies the connectivity, SHA checksums, and integrity of objects in the database.
Dangling object¶
A valid commit, tree, or blob in .git/objects/ that no current branch, tag, or reflog entry references.
Lock file (index.lock)¶
A temporary lock file created during write operations to prevent concurrent processes from corrupting Git metadata.
Partial clone¶
A Git clone technique where Git downloads only a subset of objects initially. Blobless clones (--filter=blob:none) download commit and tree graphs while fetching file contents on demand. Treeless clones (--filter=tree:0) download commits and fetch trees and blobs on demand.
Sparse checkout¶
A Git configuration mode that populates only designated directories in the working tree, hiding unselected paths from disk.
Worktree¶
An independent working directory connected to a single Git repository database (.git). Worktrees allow concurrent checkouts of multiple branches.
Reflog¶
A local log tracking every reference update (HEAD, branches) in the repository, enabling recovery of reset or deleted commits.
Plumbing command¶
Low-level Git subcommands (such as hash-object, cat-file, write-tree, commit-tree, and update-ref) that operate directly on the object database without modifying high-level repository state.
Refspec¶
A colon-separated mapping pattern ([+]<src>:<dst>) telling Git how to map local and remote references during fetch and push operations.
Mirror clone¶
A repository clone (--mirror) that maps and synchronizes all references (refs/*) identically to a remote target.
Atomic push¶
A push mode (git push --atomic) ensuring all reference updates succeed as a single transaction on the remote server, rolling back completely if any single ref fails.
Patch file¶
A text representation of one or more commits in mailbox format, produced by git format-patch. It carries the diff, commit message, author, and timestamps, so git am can reconstruct an identical commit on another repository.
fast-export stream¶
A text protocol emitted by git fast-export that serializes Git history as a sequence of blob, commit, tag, reset, and checkpoint commands. The stream is consumed by git fast-import on the receiving end. Marks (:1, :2, ...) identify objects for cross-reference within the stream and enable incremental exports.
fast-import¶
A Git plumbing command that reads a text stream from stdin and creates Git objects (blobs, trees, commits, tags) in bulk. It operates without touching the working tree or writing loose objects, making it the fastest path for repository migration, history rewriting, and synthetic repo generation. Supports checkpoint flushing, marks-based incremental import, and per-file mode/rename/copy operations.
git am¶
A command that applies patch files produced by git format-patch and creates a commit per patch, preserving original authorship. Supports three-way merge fallback (--3way) and interrupted-series recovery (--continue, --skip, --abort).
git apply¶
A command that applies a raw diff to the working tree and/or index without creating commits. git apply --check validates whether a patch applies cleanly, making it the standard CI gate before mutating state.
Mailbox format (mbox)¶
The email-style container format used by git format-patch output: headers (From, Subject, Date) followed by the diff body. The basis for git am and git send-email workflows.
Static site generation and deployment¶
Static site generator (SSG)¶
A tool that compiles markdown files, templates, and static assets into pre-rendered HTML, CSS, and JavaScript files during a build phase.
MkDocs Material¶
A documentation framework built on Python and MkDocs that provides responsive layouts, client-side search indexing, code block syntax highlighting, and tabbed content views.
Cloudflare Pages¶
A JAMstack platform that serves pre-built static assets from Cloudflare edge nodes with automated SSL termination and CDN caching.
Wrangler¶
The official Cloudflare command line interface used to manage Cloudflare services and upload static directory artifacts to Cloudflare Pages.
Forgejo Actions¶
The integrated CI/CD engine in Forgejo (compatible with GitHub Actions syntax) that executes automated build workflows on self-hosted runners.