[ANNOUNCE] Git v2.37.2

Junio C Hamano gitster at pobox.com
Thu Aug 11 19:04:29 BST 2022


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

This is to merge down the bugfixes accumulated on the 'master' front
since Git v2.37.1 was tagged.  There was no particular reason why it
had to be released today, as none of the bugs fixed are security
bugs.  But there are a few correctness related bugfixes, and users
are encouraged to update, unless they are already running 'master'
or above, in which case they already have all the fixes that appear
here.

The tarballs are found at:

    https://www.kernel.org/pub/software/scm/git/

The following public repositories all have a copy of the 'v2.37.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.37.2 Release Notes
========================

This primarily is to backport various fixes accumulated on the 'master'
front since 2.37.1.

Fixes since v2.37.1
-------------------

 * "git shortlog -n" relied on the underlying qsort() to be stable,
   which shouldn't have.  Fixed.

 * Variable quoting fix in the vimdiff driver of "git mergetool".

 * An earlier attempt to plug leaks placed a clean-up label to jump to
   at a bogus place, which as been corrected.

 * Fixes a long-standing corner case bug around directory renames in
   the merge-ort strategy.

 * Recent update to vimdiff layout code has been made more robust
   against different end-user vim settings.

 * In a non-bare repository, the behavior of Git when the
   core.worktree configuration variable points at a directory that has
   a repository as its subdirectory, regressed in Git 2.27 days.

 * References to commands-to-be-typed-literally in "git rebase"
   documentation mark-up have been corrected.

 * Give _() markings to fatal/warning/usage: labels that are shown in
   front of these messages.

 * "git mktree --missing" lazily fetched objects that are missing from
   the local object store, which was totally unnecessary for the purpose
   of creating the tree object(s) from its input.

 * Fixes for tests when the source directory has unusual characters in
   its path, e.g. whitespaces, double-quotes, etc.

 * Adjust technical/bitmap-format to be formatted by AsciiDoc, and
   add some missing information to the documentation.

 * Certain diff options are currently ignored when combined-diff is
   shown; mark them as incompatible with the feature.

 * "git clone" from a repository with some ref whose HEAD is unborn
   did not set the HEAD in the resulting repository correctly, which
   has been corrected.

 * mkstemp() emulation on Windows has been improved.

 * Add missing documentation for "include" and "includeIf" features in
   "git config" file format, which incidentally teaches the command
   line completion to include them in its offerings.

 * Avoid "white/black-list" in documentation and code comments.

 * Workaround for a compiler warning against use of die() in
   osx-keychain (in contrib/).

 * Workaround for a false positive compiler warning.

 * The resolve-undo information in the index was not protected against
   GC, which has been corrected.

 * A corner case bug where lazily fetching objects from a promisor
   remote resulted in infinite recursion has been corrected.

 * "git p4" working on UTF-16 files on Windows did not implement
   CRLF-to-LF conversion correctly, which has been corrected.

 * "git p4" did not handle non-ASCII client name well, which has been
   corrected.

 * "rerere-train" script (in contrib/) used to honor commit.gpgSign
   while recreating the throw-away merges.

 * "git checkout" miscounted the paths it updated, which has been
   corrected.

 * Fix for a bug that makes write-tree to fail to write out a
   non-existent index as a tree, introduced in 2.37.

 * There was a bug in the codepath to upgrade generation information
   in commit-graph from v1 to v2 format, which has been corrected.

Also contains minor documentation updates and code clean-ups.

----------------------------------------------------------------

Changes since v2.37.1 are as follows:

Abhradeep Chakraborty (3):
      bitmap-format.txt: feed the file to asciidoc to generate html
      bitmap-format.txt: fix some formatting issues
      bitmap-format.txt: add information for trailing checksum

Celeste Liu (1):
      contrib/rerere-train: avoid useless gpg sign in training

Cleber Rosa (1):
      setup: fix function name in a BUG() message

Derrick Stolee (9):
      t5510: replace 'origin' with URL more carefully
      vscode: improve tab size and wrapping
      git-rebase.txt: use back-ticks consistently
      daemon: clarify directory arguments
      git-cvsserver: clarify directory list
      git.txt: remove redundant language
      t: avoid "whitelist"
      transport.c: avoid "whitelist"
      compat/win32: correct for incorrect compiler warning

Dimitriy Ryazantcev (1):
      i18n: mark message helpers prefix for translation

Elijah Newren (6):
      t6429: fix use of non-existent function
      t6423: add tests of dual directory rename plus add/add conflict
      merge-ort: small cleanups of check_for_directory_rename
      merge-ort: make a separate function for freeing struct collisions
      merge-ort: shuffle the computation and cleanup of potential collisions
      merge-ort: fix issue with dual rename and add/add conflict

Fernando Ramos (1):
      vimdiff: make layout engine more robust against user vim settings

Goss Geppert (2):
      dir: traverse into repository
      dir: minor refactoring / clean-up

Han Xin (2):
      commit-graph.c: no lazy fetch in lookup_commit_in_graph()
      t5330: remove run_with_limited_processses()

Jeff King (6):
      revisions.txt: escape "..." to avoid asciidoc horizontal ellipsis
      clone: drop extra newline from warning message
      clone: propagate empty remote HEAD even with other branches
      clone: use remote branch if it matches default HEAD
      clone: move unborn head creation to update_head()
      diff-files: move misplaced cleanup label

Johannes Schindelin (3):
      tests: fix incorrect --write-junit-xml code
      mergetool(vimdiff): allow paths to contain spaces again
      shortlog: use a stable sort

Junio C Hamano (6):
      revision: mark blobs needed for resolve-undo as reachable
      fsck: do not dereference NULL while checking resolve-undo data
      builtin/remote.c: use the right kind of STRING_LIST_INIT
      Downmerge a handful of fixes for 2.37.x maintenance track
      Downmerge a bit more for 2.37.x
      Git 2.37.2

Kilian Kilger (2):
      git-p4: fix bug with encoding of p4 client name
      git-p4: refactoring of p4CmdList()

Lessley Dennington (1):
      osx-keychain: fix compiler warning

Li Linchao (1):
      ls-files: update test style

Manuel Boni (1):
      config.txt: document include, includeIf

Martin Ågren (3):
      config/core.txt: fix minor issues for `core.sparseCheckoutCone`
      t4200: drop irrelevant code
      read-cache: make `do_read_index()` always set up `istate->repo`

Matheus Tavares (4):
      checkout: document bug where delayed checkout counts entries twice
      checkout: show bug about failed entries being included in final report
      checkout: fix two bugs on the final count of updated entries
      pkt-line.h: move comment closer to the associated code

Moritz Baumann (1):
      git-p4: fix CR LF handling for utf16 files

Philippe Blain (3):
      diff-format.txt: dst can be 0* SHA-1 when path is deleted, too
      diff-format.txt: correct misleading wording
      diff-index.txt: update raw output format in examples

René Scharfe (3):
      combine-diff: abort if --ignore-matching-lines is given
      combine-diff: abort if --output is given
      mingw: avoid mktemp() in mkstemp() implementation

Richard Oliver (1):
      mktree: do not check type of remote objects

SZEDER Gábor (1):
      index-format.txt: remove outdated list of supported extensions

Tao Klerks (1):
      rev-parse: documentation adjustment - mention remote tracking with @{u}

Taylor Blau (4):
      pack-objects.h: remove outdated pahole results
      t5318: demonstrate commit-graph generation v2 corruption
      commit-graph: introduce `repo_find_commit_pos_in_graph()`
      commit-graph: fix corrupt upgrade from generation v1 to v2

Ævar Arnfjörð Bjarmason (3):
      tests: add missing double quotes to included library paths
      test-lib.sh: fix prepend_var() quoting issue
      config tests: fix harmless but broken "rm -r" cleanup



More information about the git-announce mailing list