Home Explore Blog CI



git

1st chunk of `Documentation/RelNotes/1.7.12.1.adoc`
f15fd94e825b21cc1f2bfc4ea09963e401ae3715c005c04e0000000100000b56
Git 1.7.12.1 Release Notes
==========================

Fixes since v1.7.12
-------------------

 * "git apply -p0" did not parse pathnames on "diff --git" line
   correctly.  This caused patches that had pathnames in no other
   places to be mistakenly rejected (most notably, binary patch that
   does not rename nor change mode).  Textual patches, renames or mode
   changes have preimage and postimage pathnames in different places
   in a form that can be parsed unambiguously and did not suffer from
   this problem.

 * "git cherry-pick A C B" used to replay changes in A and then B and
   then C if these three commits had committer timestamps in that
   order, which is not what the user who said "A C B" naturally
   expects.

 * "git commit --amend" let the user edit the log message and then
   died when the human-readable committer name was given
   insufficiently by getpwent(3).

 * Some capabilities were asked by fetch-pack even when upload-pack
   did not advertise that they are available.  fetch-pack has been
   fixed not to do so.

 * "git diff" had a confusion between taking data from a path in the
   working tree and taking data from an object that happens to have
   name 0{40} recorded in a tree.

 * "git for-each-ref" did not correctly support more than one --sort
   option.

 * "git log .." errored out saying it is both rev range and a path
   when there is no disambiguating "--" is on the command line.
   Update the command line parser to interpret ".." as a path in such
   a case.

 * The "--topo-order", "--date-order" (and the lack of either means
   the default order) options to "rev-list" and "log" family of
   commands were poorly described in the documentation.

 * "git prune" without "-v" used to warn about leftover temporary
   files (which is an indication of an earlier aborted operation).

 * Pushing to smart HTTP server with recent Git fails without having
   the username in the URL to force authentication, if the server is
   configured to allow GET anonymously, while requiring authentication
   for POST.

 * The reflog entries left by "git rebase" and "git rebase -i" were
   inconsistent (the interactive one gave an abbreviated object name).

 * When "git push" triggered the automatic gc on the receiving end, a
   message from "git prune" that said it was removing cruft leaked to
   the standard output, breaking the communication protocol.

 * "git show --quiet" ought to be a synonym for "git show -s", but
   wasn't.

 * "git show --format='%ci'" did not give timestamp correctly for
   commits created without human readable name on "committer" line.

 * "git send-email" did not unquote encoded words that appear on the
   header correctly, and lost "_" from strings.

 * The interactive prompt "git send-email" gives was error prone. It
   asked "What e-mail address do you want to use?" with the address it
   guessed (correctly)

Title: Git 1.7.12.1 Release Notes
Summary
This release of Git fixes several bugs, including issues with patch application, cherry-picking, commit editing, and various command-line tools, to improve the overall stability and functionality of the software.