Skip to content

/changelogs/git/git-2-55-to-2-56

Git 2.55 to 2.56: what changed

The commands on this page have not been executed by our verification runner yet.updated 2026-10-20
tool
Git
versions
2.55 → 2.56

Git 2.56 is mostly additive. The one change that can affect scripts: asking a command for help with -h or --help now exits with status 0 instead of 129. Everything else adds options and commands.

Behaviour changes

  • Help exits with 0. git <command> -h, --help and git rev-parse --parseopt exit with 0 when the user asks for help, following the usual Unix convention. Scripts that relied on 129 to detect "printed usage" need updating; invalid options still fail.
  • git log --graph indents root commits (and commits that become roots through history simplification), so they no longer look related to the commit drawn above them.
  • Push typos: git push origin/main and git branch origin main are recognised as likely typos and Git suggests the fix.
  • git status advice for a branch that is behind or has diverged from its push branch now suggests git pull <remote> <branch>.

New options and commands

FeatureWhat it does
git add --resolvedstage conflict-resolved paths only; aborts if conflict markers are left
git branch --delete-mergeddelete local branches already merged into their remote-tracking branch
git bisect --reset-when-found[=<where>]run git bisect reset automatically when the culprit is found
git refs create / delete / update / renamemanage references from the git refs toolbox
git history drop (experimental)remove a commit and replay its descendants onto its parent
git replay --linearizedrop merge commits while replaying
git repack --drop-filteredreclaim space from large promisor blobs in partial clones
fetch.followRemoteHEADdefault for remote.<name>.followRemoteHEAD
[includeIf] on worktree locationconditional config based on where the worktree lives

Looking ahead: Git 3.0

The project's BreakingChanges document lists what Git 3.0 will change for new repositories: SHA-256 as the default object format, reftable as the default reference storage, main as the default branch name, and Rust as a mandatory build dependency. Existing SHA-1 repositories keep working; there is no plan to deprecate SHA-1 repositories.

Check your version

bash
git --version

Sources