blob: 3151c85d880f520fbde338b8eaa0981e9ceaa510 [file] [log] [blame]
GIT v1.6.2 Release Notes
========================
Updates since v1.6.1
--------------------
(subsystems)
* git-svn updates.
* gitweb updates, including a new patch view and RSS/Atom feed
improvements.
(portability)
(performance)
* pack-objects autodetects the number of CPUs available and uses threaded
version.
(usability, bells and whistles)
* automatic typo correction works on aliases as well
* @{-1} is a way to refer to the last branch you were on. This is
accepted not only where an object name is expected, but anywhere
a branch name is expected. E.g. "git branch --track mybranch @{-1}"
"git rev-parse --symbolic-full-name @{-1}".
* "git add -p" learned 'g'oto action to jump directly to a hunk.
* when "git am" stops upon a patch that does not apply, it shows the
title of the offending patch.
* "git am --directory=<dir>" and "git am --reject" passes these options
to underlying "git apply".
* "git clone" now makes its best effort when cloning from an empty
repository to set up configuration variables to refer to the remote
repository.
* "git checkout -" is a shorthand for "git checkout @{-1}".
* "git cherry" defaults to whatever the current branch is tracking (if
exists) when the <upstream> argument is not given.
* "git cvsserver" can be told not to add extra "via git-CVS emulator" to
the commit log message it serves via gitcvs.commitmsgannotation
configuration.
* "git diff" learned a new option --inter-hunk-context to coalesce close
hunks together and show context between them.
* The definition of what constitutes a word for "git diff --color-words"
can be customized via gitattributes, command line or a configuration.
* "git diff" learned --patience to run "patience diff" algorithm.
* Some combinations of -b/-w/--ignore-space-at-eol to "git diff" did
not work as expected.
* "git filter-branch" learned --prune-empty option that discards commits
that do not change the contents.
* "git grep -w" and "git grep" for fixed strings have been optimized.
* "git log" and friends include HEAD to the set of starting points
when --all is given. This makes a difference when you are not on
any branch.
* "git ls-tree" learned --full-tree option that shows the path in full
regardless of where in the work tree hierarchy the command was started.
* "git mergetool" learned -y(--no-prompt) option to disable prompting.
* "git rebase -i" can transplant a history down to root to elsewhere
with --root option.
* "git reset --merge" is a new mode that works similar to the way
"git checkout" switches branches, taking the local changes while
switching to another commit.
(internal)
Fixes since v1.6.1
------------------
All of the fixes in v1.6.1.X maintenance series are included in this
release, unless otherwise noted.
* "git-add sub/file" when sub is a submodule incorrectly added the path to
the superproject.
* git-bundle did not exclude annotated tags even when a range given from the
command line wanted to.
* branch switching and merges had a silly bug that did not validate
the correct directory when making sure an existing subdirectory is
clean.
--
exec >/var/tmp/1
O=v1.6.1.2-252-g8c95d3c
echo O=$(git describe master)
git shortlog --no-merges $O..master ^maint