]> asedeno.scripts.mit.edu Git - git.git/blobdiff - Documentation/RelNotes-1.7.2.txt
Merge branch 'pb/maint-perl-errmsg-no-dir'
[git.git] / Documentation / RelNotes-1.7.2.txt
index 1df22be1269d7ccff01330523e4d805934f8bf59..9f6a9042867b6fa8e34e457731875981c67d5e41 100644 (file)
@@ -4,6 +4,11 @@ Git v1.7.2 Release Notes (draft)
 Updates since v1.7.1
 --------------------
 
 Updates since v1.7.1
 --------------------
 
+ * core.eol configuration and eol attribute are the new way to control
+   the end of line conventions for files in the working tree;
+   core.autocrlf overrides it, keeping the traditional behaviour by
+   default.
+
  * The whitespace rules used in "git apply --whitespace" and "git diff"
    gained a new member in the family (tab-in-indent) to help projects with
    policy to indent only with spaces.
  * The whitespace rules used in "git apply --whitespace" and "git diff"
    gained a new member in the family (tab-in-indent) to help projects with
    policy to indent only with spaces.
@@ -16,19 +21,29 @@ Updates since v1.7.1
    environment variable can be used to tell git not to stop at a
    filesystem boundary.
 
    environment variable can be used to tell git not to stop at a
    filesystem boundary.
 
+ * Usage help messages generated by parse-options library (i.e. most
+   of the Porcelain commands) are sent to the standard output now.
+
+ * ':/<string>' notation to look for a commit now takes regular expression
+   and it is not anchored at the beginning of the commit log message
+   anymore (this is a backward incompatible change).
+
  * "git" wrapper learned "-c name=value" option to override configuration
    variable from the command line.
 
  * "git" wrapper learned "-c name=value" option to override configuration
    variable from the command line.
 
- * After "git apply --whitespace=fix" removed trailing blank lines in an
-   patch in a patch series, it failed to apply later patches that depend
-   on the presense of such blank lines.
+ * Improved portability for various platforms including older SunOS,
+   HP-UX 10/11, AIX, Tru64, etc. and platforms with Python 2.4.
+
+ * The message from "git am -3" has been improved when conflict
+   resolution ended up making the patch a no-op.
 
  * "git checkout --orphan newbranch" is similar to "-b newbranch" but
    prepares to create a root commit that is not connected to any existing
    commit.
 
 
  * "git checkout --orphan newbranch" is similar to "-b newbranch" but
    prepares to create a root commit that is not connected to any existing
    commit.
 
- * "git commit --amend" on a commit with an invalid author-name line that
-   lacks the display name didn't work (fb7749e4).
+ * "git cherry-pick" learned to pick a range of commits (e.g. "cherry-pick
+   A..B"); this does not have nicer sequencing control "rebase [-i]" has,
+   though.
 
  * "git cvsserver" can be told to use pserver; its password file can be
    stored outside the repository.
 
  * "git cvsserver" can be told to use pserver; its password file can be
    stored outside the repository.
@@ -36,10 +51,6 @@ Updates since v1.7.1
  * The output from the textconv filter used by "git diff" can be cached to
    speed up their reuse.
 
  * The output from the textconv filter used by "git diff" can be cached to
    speed up their reuse.
 
- * "git diff --color" did not paint extended diff headers per line
-   (i.e. the coloring escape sequence didn't end at the end of line),
-   which confused "less -R".
-
  * "git diff --word-diff=<mode>" extends the existing "--color-words"
    option, making it more useful in color-challenged environments.
 
  * "git diff --word-diff=<mode>" extends the existing "--color-words"
    option, making it more useful in color-challenged environments.
 
@@ -47,27 +58,50 @@ Updates since v1.7.1
    been enhanced for visibility modifiers (public, protected, etc.) to
    better support PHP5.
 
    been enhanced for visibility modifiers (public, protected, etc.) to
    better support PHP5.
 
+ * "diff.noprefix" configuration variable can be used to implicitly
+   ask for "diff --no-prefix" behaviour.
+
  * "git for-each-ref" learned "%(objectname:short)" that gives the object
    name abbreviated.
 
  * "git for-each-ref" learned "%(objectname:short)" that gives the object
    name abbreviated.
 
+ * "git format-patch" learned --signature option and format.signature
+   configuration variable to customize the e-mail signature used in the
+   output.
+
  * Various options to "git grep" (e.g. --count, --name-only) work better
    with binary files.
 
  * Various options to "git grep" (e.g. --count, --name-only) work better
    with binary files.
 
+ * "git help -w" learned "chrome" and "chromium" browsers.
+
  * "git log --follow <path>" follows across copies (it used to only follow
    renames).  This may make the processing more expensive.
 
  * "git log --follow <path>" follows across copies (it used to only follow
    renames).  This may make the processing more expensive.
 
+ * "git log --pretty=format:<template>" specifier learned "% <something>"
+   magic that inserts a space only when %<something> expands to a
+   non-empty string; this is similar to "%+<something>" magic, but is
+   useful in a context to generate a single line output.
+
  * "git notes prune" learned "-n" (dry-run) and "-v" options, similar to
    what "git prune" has.
 
  * "git patch-id" can be fed a mbox without getting confused by the
    signature line in the format-patch output.
 
  * "git notes prune" learned "-n" (dry-run) and "-v" options, similar to
    what "git prune" has.
 
  * "git patch-id" can be fed a mbox without getting confused by the
    signature line in the format-patch output.
 
+ * "git remote" learned "set-branches" subcommand.
+
  * "git revert" learned --strategy option to specify the merge strategy.
 
  * "git revert" learned --strategy option to specify the merge strategy.
 
+ * "git rev-list A..B" learned --ancestry-path option to further limit
+   the result to the commits that are on the ancestry chain between A and
+   B (i.e. commits that are not descendants of A are excluded).
+
  * "git status [-s] --ignored" can be used to list ignored paths.
 
  * "git status [-s] --ignored" can be used to list ignored paths.
 
+ * "git status -s -b" shows the current branch in the output.
+
  * Various "gitweb" enhancements and clean-ups, including syntax
  * Various "gitweb" enhancements and clean-ups, including syntax
-   highlighting.
+   highlighting, "plackup" support for instaweb, .fcgi suffix to run
+   it as FastCGI script, etc.
 
 
 Fixes since v1.7.1
 
 
 Fixes since v1.7.1
@@ -76,32 +110,35 @@ Fixes since v1.7.1
 All of the fixes in v1.7.1.X maintenance series are included in this
 release, unless otherwise noted.
 
 All of the fixes in v1.7.1.X maintenance series are included in this
 release, unless otherwise noted.
 
- * We didn't recognize timezone "Z" as a synonym for "UTC" (75b37e70).
+ * We didn't URL decode "file:///path/to/repo" correctly when path/to/repo
+   had percent-encoded characters (638794c, 9d2e942).
 
 
- * "git checkout" and "git rebase" overwrote paths that are marked "assume
-   unchanged" (aecda37c).
+ * "git commit" did not honor GIT_REFLOG_ACTION environment variable, resulting
+   reflog messages for cherry-pick and revert actions to be recorded as "commit".
 
  * "git clone/fetch/pull" issued an incorrect error message when a ref and
    a symref that points to the ref were updated at the same time.  This
    obviously would update them to the same value, and should not result in
 
  * "git clone/fetch/pull" issued an incorrect error message when a ref and
    a symref that points to the ref were updated at the same time.  This
    obviously would update them to the same value, and should not result in
-   an error condition (7223dcaf).
+   an error condition (0e71bc3).
 
  * "git clone" did not configure remote.origin.url correctly for bare
    clones (df61c889).
 
 
  * "git clone" did not configure remote.origin.url correctly for bare
    clones (df61c889).
 
- * "git diff" used to tell underlying xdiff machinery to work very hard to
-   minimize the output, but this often was spending too many extra cycles
-   for very little gain (582aa00).
+ * "git diff" inside a tree with many pathnames that have certain
+   characters has become very slow in 1.7.0 by mistake (will merge
+   e53e6b443 to 'maint').
+
+ * "git diff --graph" works better with "--color-words" and other options
+   (81fa024..4297c0a).
 
 
- * "git pull" accepted "--dry-run", gave it to underlying "git fetch" but
-   ignored the option itself, resulting in a bogus attempt to merge
-   unrelated commit (29609e68).
+ * "git diff" could show ambiguous abbreviation of blob object names on
+   its "index" line (3e5a188).
 
  * "git reset --hard" started from a wrong directory and a working tree in
    a nonstandard location is in use got confused (560fb6a1).
 
 --
 exec >/var/tmp/1
 
  * "git reset --hard" started from a wrong directory and a working tree in
    a nonstandard location is in use got confused (560fb6a1).
 
 --
 exec >/var/tmp/1
-O=v1.7.1-336-g0925c02
-echo O=$(git describe master)
-git shortlog --no-merges master ^maint ^$O
+O=v1.7.1-568-g2c177a1
+echo O=$(git describe HEAD)
+git shortlog --no-merges HEAD ^maint ^$O