Home Explore Blog CI



git

5th chunk of `Documentation/RelNotes/1.5.4.adoc`
8a08dedc217d2ee06f3c02485d6098165ea2df07a66a18640000000100000e82
 "format.numbered" configuration variable
   to automatically turn --numbered option on when more than one commits
   are formatted.

 * "git ls-files" learned "--exclude-standard" to use the canned set of
   exclude files.

 * "git tag -a -f existing" begins the editor session using the existing
   annotation message.

 * "git tag -m one -m bar" (multiple -m options) behaves similarly to
   "git commit"; the parameters to -m options are formatted as separate
   paragraphs.

 * The format "git show" outputs an annotated tag has been updated to
   include "Tagger: " and "Date: " lines from the tag itself.  Strictly
   speaking this is a backward incompatible change, but this is a
   reasonable usability fix and people's scripts shouldn't have been
   relying on the exact output from "git show" Porcelain anyway.

 * "git cvsimport" did not notice errors from underlying "cvsps"
   and produced a corrupt import silently.

 * "git cvsexportcommit" learned -w option to specify and switch to the
   CVS working directory.

 * "git checkout" from a subdirectory learned to use "../path" to allow
   checking out a path outside the current directory without cd'ing up.

 * "git checkout" from and to detached HEAD leaves a bit more
   information in the reflog.

 * "git send-email --dry-run" shows full headers for easier diagnosis.

 * "git merge-ours" is now built-in.

 * "git svn" learned "info" and "show-externals" subcommands.

 * "git svn" run from a subdirectory failed to read settings from the
   .git/config.

 * "git svn" learned --use-log-author option, which picks up more
   descriptive name from From: and Signed-off-by: lines in the commit
   message.

 * "git svn" wasted way too much disk to record revision mappings
   between svn and git; a new representation that is much more compact
   for this information has been introduced to correct this.

 * "git svn" left temporary index files it used without cleaning them
   up; this was corrected.

 * "git status" from a subdirectory now shows relative paths, which
   makes copy-and-pasting for git-checkout/git-add/git-rm easier.  The
   traditional behavior to show the full path relative to the top of
   the work tree can be had by setting status.relativepaths
   configuration variable to false.

 * "git blame" kept text for each annotated revision in core needlessly;
   this has been corrected.

 * "git shortlog" learned to default to HEAD when the standard input is
   a terminal and the user did not give any revision parameter.

 * "git shortlog" learned "-e" option to show e-mail addresses as well as
   authors' names.

 * "git help" learned "-w" option to show documentation in browsers.

 * In addition there are quite a few internal clean-ups. Notably:

   - many fork/exec have been replaced with run-command API,
     brought from the msysgit effort.

   - introduction and more use of the option parser API.

   - enhancement and more use of the strbuf API.

 * Makefile tweaks to support HP-UX is in.

Fixes since v1.5.3
------------------

All of the fixes in v1.5.3 maintenance series are included in
this release, unless otherwise noted.

These fixes are only in v1.5.4 and not backported to v1.5.3 maintenance
series.

 * The way "git diff --check" behaves is much more consistent with the way
   "git apply --whitespace=warn" works.

 * "git svn" talking with the SVN over HTTP will correctly quote branch
   and project names.

 * "git config" did not work correctly on platforms that define
   REG_NOMATCH to an even number.

 * Recent versions of AsciiDoc 8 has a change to break our
   documentation; a workaround has been implemented.

 * "git diff --color-words" colored context lines in a wrong color.

Title: GIT Version Update and Enhancements
Summary
This GIT version update includes a wide range of enhancements and fixes, such as new configuration variables, improved git commands like git ls-files, git tag, and git show, and corrections to issues like silent errors in git cvsimport, improved handling of annotated tags, and enhancements to git svn, git blame, and git shortlog, as well as various internal clean-ups and optimizations.