Use git bisect with a deterministic regression test
Bisect performs binary search between known good and bad commits, classifying tested revisions until it identifies the first bad candidate.
Create a Git bundle that proves it contains the refs needed for recovery
Git bundle writes selected reachable objects and refs into one file that another Git repository can verify and clone without network access.
Use Git interactive rebase without rewriting unreviewed shared history
Interactive rebase replays selected commits onto a new base, creating new object IDs and requiring explicit conflict and publication decisions.
Recover a lost Git commit from the reflog without moving the current branch
Reflogs record recent local ref movements and HEAD transitions, allowing a still-present commit object to be named and protected with a new ref.
Use git rerere to reuse conflict resolutions without trusting them blindly
Rerere records the shape of a conflict and the chosen resolution, then can reapply it when the same conflict recurs.
Restore a deleted Git branch from a verified commit object
Deleting a branch removes a ref, not immediately its reachable commit objects; reflogs, remotes, and object traversal may still identify the tip.
Use Git sparse-checkout for large repositories without losing tracked state
Sparse-checkout controls which tracked paths populate the working tree; cone mode uses directory patterns while the complete index and object model remain repository-wide.
Update Git submodules to reviewed commits instead of floating branches
A superproject records one gitlink commit for each submodule; update materializes that exact object according to local URL and recursion policy.
Verify signed Git commits while checking the trusted identity separately
A commit signature proves control of a signing key over one commit object; trust, key ownership, repository authorization, and source review remain separate.
Use git worktree for a clean hotfix without stashing active work
A linked worktree checks out another branch into a separate directory while sharing repository objects and most refs.