Subject: [ANNOUNCE] GIT 1.5.4.2

From: Junio C Hamano <[email-masked]>
Date: Sun, 17 Feb 2008 01:14:54 -0800

The latest maintenance release GIT 1.5.4.2 is available at the
usual places:

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

  git-1.5.4.2.tar.{gz,bz2}			(tarball)
  git-htmldocs-1.5.4.2.tar.{gz,bz2}		(preformatted docs)
  git-manpages-1.5.4.2.tar.{gz,bz2}		(preformatted docs)
  RPMS/$arch/git-*-1.5.4.2-1.$arch.rpm	(RPM)

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

GIT v1.5.4.2 Release Notes
==========================

Fixes since v1.5.4
------------------

 * The configuration parser was not prepared to see string
   valued variables misspelled as boolean and segfaulted.

 * Temporary files left behind due to interrupted object
   transfers were not cleaned up with "git prune".

 * "git config --unset" was confused when the unset variables
   were spelled with continuation lines in the config file.

 * The merge message detection in "git cvsimport" did not catch
   a message that began with "Merge...".

 * "git status" suggests "git rm --cached" for unstaging the
   earlier "git add" before the initial commit.

 * "git status" output was incorrect during a partial commit.

 * "git bisect" refused to start when the HEAD was detached.

 * "git bisect" allowed a wildcard character in the commit
   message expanded while writing its log file.

 * Manual pages were not formatted correctly with docbook xsl
   1.72; added a workaround.

 * "git-commit -C $tag" used to work but rewrite in C done in
   1.5.4 broke it.  This was fixed in 1.5.4.1.

 * An entry in the .gitattributes file that names a pattern in a
   subdirectory of the directory it is in did not match
   correctly (e.g. pattern "b/*.c" in "a/.gitattributes" should
   match "a/b/foo.c" but it didn't).  This was fixed in 1.5.4.1.

 * Customized color specification was parsed incorrectly when
   numeric color values are used.  This was fixed in 1.5.4.1.

 * http transport misbehaved when linked with curl-gnutls.

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

Changes since v1.5.4.1 are as follows:

Christian Couder (8):
      config: add test cases for empty value and no value config variables.
      diff.c: replace a 'strdup' with 'xstrdup'.
      diff.c: remove useless check for value != NULL
      config: add 'git_config_string' to refactor string config variables.
      Add "const" qualifier to "char *pager_program".
      Add "const" qualifier to "char *editor_program".
      Add "const" qualifier to "char *excludes_file".
      diff.c: add "const" qualifier to "char *cmd" member of "struct ll_diff_driver"

Daniel Barkalow (1):
      Validate nicknames of remote branches to prohibit confusing ones

David Steven Tweed (1):
      Make git prune remove temporary packs that look like write failures

Frank Lichtenheld (1):
      config: Fix --unset for continuation lines

Gerrit Pape (2):
      builtin-commit: remove .git/SQUASH_MSG upon successful commit
      cvsimport: have default merge regex also match beginning of commit message

James Bowes (1):
      Add a BuildRequires for gettext in the spec file.

Jay Soffian (1):
      mailinfo: feed only one line to handle_filter() for QP input

Jeff King (2):
      status: suggest "git rm --cached" to unstage for initial commit
      commit: discard index after setting up partial commit

Johannes Schindelin (3):
      bisect: allow starting with a detached HEAD
      Document that the default of branch.autosetupmerge is true
      bisect: use verbatim commit subject in the bisect log

Johannes Sixt (1):
      upload-pack: Initialize the exec-path.

Jonas Fonseca (1):
      man pages are littered with .ft C and others

Junio C Hamano (31):
      git-pull documentation: fix markup
      archive-tar.c: guard config parser from value=NULL
      Add config_error_nonbool() helper function
      builtin-apply.c: guard config parser from value=NULL
      builtin-branch.c: guard config parser from value=NULL
      builtin-commit.c: guard config parser from value=NULL
      builtin-config.c: guard config parser from value=NULL
      builtin-log.c: guard config parser from value=NULL
      builtin-reflog.c: guard config parser from value=NULL
      builtin-show-branch.c: guard config parser from value=NULL
      builtin-tag.c: guard config parser from value=NULL
      connect.c: guard config parser from value=NULL
      convert.c: guard config parser from value=NULL
      diff.c: guard config parser from value=NULL
      git.c: guard config parser from value=NULL
      help.c: guard config parser from value=NULL
      http.c: guard config parser from value=NULL
      merge-recursive.c: guard config parser from value=NULL
      remote.c: guard config parser from value=NULL
      setup.c: guard config parser from value=NULL
      wt-status.c: guard config parser from value=NULL
      imap-send.c: guard config parser from value=NULL
      builtin-log.c: guard config parser from value=NULL
      config.c: guard config parser from value=NULL
      Revert "pack-objects: only throw away data during memory pressure"
      Protect get_author_ident_from_commit() from filenames in work tree
      diff.c: fixup garding of config parser from value=NULL
      diff: Fix miscounting of --check output
      filter-branch: handle filenames that need quoting
      Documentation/git-reset:
      GIT 1.5.4.2

Martin Koegler (1):
      pack-objects: only throw away data during memory pressure

Mike Hommey (1):
      Work around curl-gnutls not liking to be reinitialized

Miklos Vajna (2):
      builtin-gc.c: guard config parser from value=NULL
      git clone -s documentation: force a new paragraph for the NOTE

Pieter de Bie (2):
      Documentation/git-reset: don't mention --mixed for selected-paths reset
      Documentation/git-reset: Add an example of resetting selected paths

Sergei Organov (1):
      git-cvsimport.txt: fix '-M' description.

Shawn O. Pearce (1):
      fast-import: check return value from unpack_entry()

Stelian Pop (1):
      hg-to-git: fix parent analysis

Uwe Kleine-K旦nig (1):
      rebase -i: accept -m as advertised in the man page