Documentation / RelNotes-1.7.2.txton commit ll-merge: replace flag argument with options struct (712516b)
   1Git v1.7.2 Release Notes (draft)
   2================================
   3
   4Updates since v1.7.1
   5--------------------
   6
   7 * core.eol configuration and eol attribute are the new way to control
   8   the end of line conventions for files in the working tree;
   9   core.autocrlf overrides it, keeping the traditional behaviour by
  10   default.
  11
  12 * The whitespace rules used in "git apply --whitespace" and "git diff"
  13   gained a new member in the family (tab-in-indent) to help projects with
  14   policy to indent only with spaces.
  15
  16 * When working from a subdirectory, by default, git does not look for its
  17   metadirectory ".git" across filesystems, primarily to help people who
  18   have invocations of git in their custom PS1 prompts, as being outside
  19   of a git repository would look for ".git" all the way up to the root
  20   directory, and NFS mounts are often slow.  DISCOVERY_ACROSS_FILESYSTEM
  21   environment variable can be used to tell git not to stop at a
  22   filesystem boundary.
  23
  24 * Usage help messages generated by parse-options library (i.e. most
  25   of the Porcelain commands) are sent to the standard output now.
  26
  27 * ':/<string>' notation to look for a commit now takes regular expression
  28   and it is not anchored at the beginning of the commit log message
  29   anymore (this is a backward incompatible change).
  30
  31 * "git" wrapper learned "-c name=value" option to override configuration
  32   variable from the command line.
  33
  34 * Improved portability for various platforms including older SunOS,
  35   HP-UX 10/11, AIX, Tru64, etc. and platforms with Python 2.4.
  36
  37 * The message from "git am -3" has been improved when conflict
  38   resolution ended up making the patch a no-op.
  39
  40 * "git blame" applies the textconv filter to the contents it works
  41   on, when available.
  42
  43 * "git checkout --orphan newbranch" is similar to "-b newbranch" but
  44   prepares to create a root commit that is not connected to any existing
  45   commit.
  46
  47 * "git cherry-pick" learned to pick a range of commits (e.g. "cherry-pick
  48   A..B"); this does not have nicer sequencing control "rebase [-i]" has,
  49   though.
  50
  51 * "git cvsserver" can be told to use pserver; its password file can be
  52   stored outside the repository.
  53
  54 * The output from the textconv filter used by "git diff" can be cached to
  55   speed up their reuse.
  56
  57 * "git diff --word-diff=<mode>" extends the existing "--color-words"
  58   option, making it more useful in color-challenged environments.
  59
  60 * The regexp to detect function headers used by "git diff" for PHP has
  61   been enhanced for visibility modifiers (public, protected, etc.) to
  62   better support PHP5.
  63
  64 * "diff.noprefix" configuration variable can be used to implicitly
  65   ask for "diff --no-prefix" behaviour.
  66
  67 * "git for-each-ref" learned "%(objectname:short)" that gives the object
  68   name abbreviated.
  69
  70 * "git format-patch" learned --signature option and format.signature
  71   configuration variable to customize the e-mail signature used in the
  72   output.
  73
  74 * Various options to "git grep" (e.g. --count, --name-only) work better
  75   with binary files.
  76
  77 * "git help -w" learned "chrome" and "chromium" browsers.
  78
  79 * "git log --follow <path>" follows across copies (it used to only follow
  80   renames).  This may make the processing more expensive.
  81
  82 * "git log --pretty=format:<template>" specifier learned "% <something>"
  83   magic that inserts a space only when %<something> expands to a
  84   non-empty string; this is similar to "%+<something>" magic, but is
  85   useful in a context to generate a single line output.
  86
  87 * "git notes prune" learned "-n" (dry-run) and "-v" options, similar to
  88   what "git prune" has.
  89
  90 * "git patch-id" can be fed a mbox without getting confused by the
  91   signature line in the format-patch output.
  92
  93 * "git remote" learned "set-branches" subcommand.
  94
  95 * "git revert" learned --strategy option to specify the merge strategy.
  96
  97 * "git rev-list A..B" learned --ancestry-path option to further limit
  98   the result to the commits that are on the ancestry chain between A and
  99   B (i.e. commits that are not descendants of A are excluded).
 100
 101 * "git show -5" is equivalent to "git show --do-walk 5"; this is similar
 102   to the update to make "git show master..next" walk the history,
 103   introduced in 1.6.4.
 104
 105 * "git status [-s] --ignored" can be used to list ignored paths.
 106
 107 * "git status -s -b" shows the current branch in the output.
 108
 109 * Various "gitweb" enhancements and clean-ups, including syntax
 110   highlighting, "plackup" support for instaweb, .fcgi suffix to run
 111   it as FastCGI script, etc.
 112
 113
 114Fixes since v1.7.1
 115------------------
 116
 117All of the fixes in v1.7.1.X maintenance series are included in this
 118release, unless otherwise noted.
 119
 120 * We didn't URL decode "file:///path/to/repo" correctly when path/to/repo
 121   had percent-encoded characters (638794c, 9d2e942).
 122
 123 * "git commit" did not honor GIT_REFLOG_ACTION environment variable, resulting
 124   reflog messages for cherry-pick and revert actions to be recorded as "commit".
 125
 126 * "git clone/fetch/pull" issued an incorrect error message when a ref and
 127   a symref that points to the ref were updated at the same time.  This
 128   obviously would update them to the same value, and should not result in
 129   an error condition (0e71bc3).
 130
 131 * "git clone" did not configure remote.origin.url correctly for bare
 132   clones (df61c889).
 133
 134 * "git diff" inside a tree with many pathnames that have certain
 135   characters has become very slow in 1.7.0 by mistake (will merge
 136   e53e6b443 to 'maint').
 137
 138 * "git diff --graph" works better with "--color-words" and other options
 139   (81fa024..4297c0a).
 140
 141 * "git diff" could show ambiguous abbreviation of blob object names on
 142   its "index" line (3e5a188).
 143
 144 * "git rebase" did not faithfully reproduce a malformed author ident, that
 145   is often seen in a repository converted from foreign SCMs (43c23251).
 146
 147 * "git reset --hard" started from a wrong directory and a working tree in
 148   a nonstandard location is in use got confused (560fb6a1).
 149
 150--
 151exec >/var/tmp/1
 152O=v1.7.1-592-gcf4403a
 153echo O=$(git describe HEAD)
 154git shortlog --no-merges HEAD ^maint ^$O