threads / announce / 64393

[ANNOUNCE] Git v2.51.2

Subject: [ANNOUNCE] Git v2.51.2

## tl;dr

One message between Oct 27, 2025 and Oct 27, 2025.

replies: 0people: 1as markdown or json

Junio C Hamano· Oct 27, 2025, 15:58 UTC · lore

The latest maintenance release Git v2.51.2 is now available at the usual places.

The tarballs are found at:
    https://www.kernel.org/pub/software/scm/git/

The following public repositories all have a copy of the 'v2.51.2' tag and the 'maint' branch that the tag points at:

  url = https://git.kernel.org/pub/scm/git/git
  url = https://kernel.googlesource.com/pub/scm/git/git
  url = git://repo.or.cz/alt-git.git
  url = https://github.com/gitster/git
----------------------------------------------------------------

Git 2.51.2 Release Notes ========================

In addition to fixes for an unfortunate regression introduced in Git 2.51.1 that caused "git diff --quiet -w" to be not so quiet when there are additions, deletions and conflicts, this maintenance release merges more fixes/improvements that have landed on the master front, primarily to make the CI part of the system a bit more robust.

Fixes since Git 2.51.1 ----------------------

 * Recently we attempted to improve "git diff -w --quiet" and friends
   to handle cases where patch output would be suppressed, but it
   introduced a bug that emits unnecessary output, which has been
   corrected.
 * The code to squelch output from "git diff -w --name-status"
   etc. for paths that "git diff -w -p" would have stayed silent
   leaked output from dry-run patch generation, which has been
   corrected.
 * Windows "real-time monitoring" interferes with the execution of
   tests and affects negatively in both correctness and performance,
   which has been disabled in Gitlab CI.
 * An earlier addition to "git diff --no-index A B" to limit the
   output with pathspec after the two directories misbehaved when
   these directories were given with a trailing slash, which has been
   corrected.
 * The "--short" option of "git status" that meant output for humans
   and "-z" option to show NUL delimited output format did not mix
   well, and colored some but not all things.  The command has been
   updated to color all elements consistently in such a case.
 * Unicode width table update.
 * Recent OpenSSH creates the Unix domain socket to communicate with
   ssh-agent under $HOME instead of /tmp, which causes our test to
   fail doe to overly long pathname in our test environment, which has
   been worked around by using "ssh-agent -T".
Also contains various documentation updates, code cleanups and minor fixups.
----------------------------------------------------------------
Changes since v2.51.1 are as follows:
Jacob Keller (1):
      diff --no-index: fix logic for paths ending in '/'
Jeff King (2):
      diff: restore redirection to /dev/null for diff_from_contents
      status: make coloring of "-z --short" consistent
Johannes Schindelin (5):
      refs: forbid clang to complain about unreachable code
      build(deps): bump actions/download-artifact from 4 to 5
      build(deps): bump actions/checkout from 4 to 5
      build(deps): bump actions/setup-python from 5 to 6
      build(deps): bump actions/github-script from 7 to 8
Junio C Hamano (2):
      diff: make sure the other caller of diff_flush_patch_quietly() is silent
      Git 2.51.2
Kristoffer Haugsbakk (1):
      doc: fix accidental literal blocks
Patrick Steinhardt (2):
      gitlab-ci: disable realtime monitoring to unbreak Windows jobs
      t7528: work around ETOOMANY in OpenSSH 10.1 and newer
Solly (1):
      t2401: update path checks using test_path helpers
Torsten Bögershausen (1):
      unicode: update the width tables to Unicode 17

← back to recent threads