Merge branch 'maint'
[gitweb.git] / Documentation / RelNotes / 1.8.5.txt
index ac5c3fafe59be32e5f276ad4276a5f9d6305fe85..882b12d8e4c56b7287eb1120995816f35884de71 100644 (file)
@@ -42,6 +42,11 @@ release, will keep ignoring removals, but the users who rely on this
 behaviour are encouraged to start using "git add --ignore-removal <path>"
 now before 2.0 is released.
 
+The default prefix for "git svn" will change in Git 2.0.  For a long
+time, "git svn" created its remote-tracking branches directly under
+refs/remotes, but it will place them under refs/remotes/origin/ unless
+it is told otherwise with its --prefix option.
+
 
 Updates since v1.8.4
 --------------------
@@ -71,6 +76,24 @@ Foreign interfaces, subsystems and ports.
 
 UI, Workflows & Features
 
+ * "git grep" and "git show" pays attention to "--textconv" option
+   when these commands are told to operate on blob objects (e.g. "git
+   grep -e pattern HEAD:Makefile").
+
+ * "git replace" helper no longer allows an object to be replaced with
+   another object of a different type to avoid confusion (you can
+   still manually craft such replacement using "git update-ref", as an
+   escape hatch).
+
+ * "git status" no longer prints dirty status information for
+   submodules for which submodule.$name.ignore is set to "all".
+
+ * "git rebase -i" honours core.abbrev when preparing the insn sheet
+   for editing.
+
+ * "git status" during a cherry-pick shows what original commit is
+   being picked.
+
  * Instead of typing four capital letters "HEAD", you can say "@" now,
    e.g. "git log @".
 
@@ -96,6 +119,9 @@ UI, Workflows & Features
 
  * "git status" now omits the prefix to make its output a comment in a
    commit log editor, which is not necessary for human consumption.
+   Scripts that parse the output of "git status" are advised to use
+   "git status --porcelain" instead, as its format is stable and easier
+   to parse.
 
  * Make "foo^{tag}" to peel a tag to itself, i.e. no-op., and fail if
    "foo" is not a tag.  "git rev-parse --verify v1.0^{tag}" would be
@@ -179,6 +205,12 @@ UI, Workflows & Features
 
 Performance, Internal Implementation, etc.
 
+ * The HTTP transport will try to use TCP keepalive when able.
+
+ * "git repack" is now written in C.
+
+ * Build procedure for MSVC has been updated.
+
  * If a build-time fallback is set to "cat" instead of "less", we
    should apply the same "no subprocess or pipe" optimization as we
    apply to user-supplied GIT_PAGER=cat.
@@ -212,6 +244,37 @@ Unless otherwise noted, all the fixes since v1.8.4 in the maintenance
 track are contained in this release (see release notes to them for
 details).
 
+ * Bash prompting code to deal with an SVN remote as an upstream
+   were coded in a way not supported by older Bash versions (3.x).
+   (merge 52ec889 sg/prompt-svn-remote-fix later to maint).
+
+ * The fall-back parsing of commit objects with broken author or
+   committer lines were less robust than ideal in picking up the
+   timestamps.
+   (merge 03818a4 jk/split-broken-ident later to maint).
+
+ * "git rev-list --objects ^v1.0^ v1.0" gave v1.0 tag itself in the
+   output, but "git rev-list --objects v1.0^..v1.0" did not.
+   (merge 895c5ba jc/revision-range-unpeel later to maint).
+
+ * "git clone" gave some progress messages to the standard output, not
+   to the standard error, and did not allow suppressing them with the
+   --no-progress option.
+   (merge 643f918 jk/clone-progress-to-stderr later to maint).
+
+ * "format-patch --from=<whom>" forgot to omit unnecessary in-body
+   from line, i.e. when <whom> is the same as the real author.
+   (merge 662cc30 jk/format-patch-from later to maint).
+
+ * "git shortlog" used to choke and die when there is a malformed
+   commit (e.g. missing authors); it now simply ignore such a commit
+   and keeps going.
+   (merge cd4f09e jk/shortlog-tolerate-broken-commit later to maint).
+
+ * "git merge-recursive" did not parse its "--diff-algorithm=" command
+   line option correctly.
+   (merge 6562928 jk/diff-algo later to maint).
+
  * When running "fetch -q", a long silence while the sender side
    computes the set of objects to send can be mistaken by proxies as
    dropped connection.  The server side has been taught to send a