blob: bd87a9174641d8284fec6466aac8edacdf18127c [file] [log] [blame]
Git v1.7.2 Release Notes (draft)
================================
Updates since v1.7.1
--------------------
* 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.
* When working from a subdirectory, by default, git does not look for its
metadirectory ".git" across filesystems, primarily to help people who
have invocations of git in their custom PS1 prompts, as being outside
of a git repository would look for ".git" all the way up to the root
directory, and NFS mounts are often slow. DISCOVERY_ACROSS_FILESYSTEM
environment variable can be used to tell git not to stop at a
filesystem boundary.
* "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.
* 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 commit --amend" on a commit with an invalid author-name line that
lacks the display name didn't work (fb7749e4).
* "git cvsserver" can be told to use pserver; its password file can be
stored outside the repository.
* 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.
* The regexp to detect function headers used by "git diff" for PHP has
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.
* 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 ls-files ../out/side/cwd" works now.
* "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 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
highlighting, "plackup" support for instaweb, etc.
Fixes since v1.7.1
------------------
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 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).
* "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 --graph" works better with "--color-words" and other options
(81fa024..4297c0a).
* "git diff" could show ambiguous abbreviation of blob object names on
its "index" line (3e5a188).
* "git merge --log" used to replace the custom message given by "-m" with
the shortlog, instead of appending to it (tc/merge-m-log).
* "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 reset --hard" started from a wrong directory and a working tree in
a nonstandard location is in use got confused (560fb6a1).
* "git show -C -C" and other corner cases lost diff metainfo output
in 1.7.0 (296c6bb).
--
exec >/var/tmp/1
O=v1.7.1-423-gae391ec
echo O=$(git describe HEAD)
git shortlog --no-merges HEAD ^maint ^$O