Home Explore Blog CI



git

8th chunk of `Documentation/RelNotes/1.8.2.adoc`
4bc314be9eaf04f24b6b696d8b87df91a0151c15006a1bee0000000100000cca
  looking for possible matches with paths in <tree-ish>.

 * Command line completion for "tcsh" emitted an unwanted space
   after completing a single directory name.

 * Command line completion code was inadvertently made incompatible with
   older versions of bash by using a newer array notation.

 * "git push" was taught to refuse updating the branch that is
   currently checked out long time ago, but the user manual was left
   stale.
   (merge 50995ed wk/man-deny-current-branch-is-default-these-days later to maint).

 * Some shells do not behave correctly when IFS is unset; work it
   around by explicitly setting it to the default value.

 * Some scripted programs written in Python did not get updated when
   PYTHON_PATH changed.
   (cherry-pick 96a4647fca54031974cd6ad1 later to maint).

 * When autoconf is used, any build on a different commit always ran
   "config.status --recheck" even when unnecessary.

 * A fix was added to the build procedure to work around buggy
   versions of ccache broke the auto-generation of dependencies, which
   unfortunately is still relevant because some people use ancient
   distros.

 * The autoconf subsystem passed --mandir down to generated
   config.mak.autogen but forgot to do the same for --htmldir.
   (merge 55d9bf0 ct/autoconf-htmldir later to maint).

 * A change made on v1.8.1.x maintenance track had a nasty regression
   to break the build when autoconf is used.
   (merge 7f1b697 jn/less-reconfigure later to maint).

 * We have been carrying a translated and long-unmaintained copy of an
   old version of the tutorial; removed.

 * t0050 had tests expecting failures from a bug that was fixed some
   time ago.

 * t4014, t9502 and t0200 tests had various portability issues that
   broke on OpenBSD.

 * t9020 and t3600 tests had various portability issues.

 * t9200 runs "cvs init" on a directory that already exists, but a
   platform can configure this fail for the current user (e.g. you
   need to be in the cvsadmin group on NetBSD 6.0).

 * t9020 and t9810 had a few non-portable shell script construct.

 * Scripts to test bash completion was inherently flaky as it was
   affected by whatever random things the user may have on $PATH.

 * An element on GIT_CEILING_DIRECTORIES could be a "logical" pathname
   that uses a symbolic link to point at somewhere else (e.g. /home/me
   that points at /net/host/export/home/me, and the latter directory
   is automounted). Earlier when Git saw such a pathname e.g. /home/me
   on this environment variable, the "ceiling" mechanism did not take
   effect. With this release (the fix has also been merged to the
   v1.8.1.x maintenance series), elements on GIT_CEILING_DIRECTORIES
   are by default checked for such aliasing coming from symbolic
   links. As this needs to actually resolve symbolic links for each
   element on the GIT_CEILING_DIRECTORIES, you can disable this
   mechanism for some elements by listing them after an empty element
   on the GIT_CEILING_DIRECTORIES. e.g. Setting /home/me::/home/him to
   GIT_CEILING_DIRECTORIES makes Git resolve symbolic links in
   /home/me when checking if the current directory is under /home/me,
   but does not do so for /home/him.
   (merge 7ec30aa mh/maint-ceil-absolute later to maint).

Title: Git Bug Fixes and Improvements
Summary
This release addresses numerous issues in Git, including fixes for command line completion, 'git push', and the build procedure. Additionally, improvements are made to autoconf, bash compatibility, and test portability. The release also includes fixes for issues with symbolic links, CVS integration, and the 'GIT_CEILING_DIRECTORIES' environment variable. Other changes include removing outdated translations, fixing test scripts, and enhancing the overall stability and compatibility of Git.