Code

Merge branch 'js/git-submodule-trailing-slash'
[git.git] / Documentation / RelNotes-1.6.2.txt
index 3151c85d880f520fbde338b8eaa0981e9ceaa510..f1bfa82749c3993270b64c7e86e64b1cf6572a76 100644 (file)
@@ -1,6 +1,20 @@
 GIT v1.6.2 Release Notes
 ========================
 
 GIT v1.6.2 Release Notes
 ========================
 
+With the next major release, "git push" into a branch that is
+currently checked out will be refused by default.  You can choose
+what should happen upon such a push by setting the configuration
+variable receive.denyCurrentBranch in the receiving repository.
+
+To ease the transition plan, the receiving repository of such a
+push running this release will issue a big warning when the
+configuration variable is missing.  Please refer to:
+
+  http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007
+
+for more details on the transition plan.
+
+
 Updates since v1.6.1
 --------------------
 
 Updates since v1.6.1
 --------------------
 
@@ -11,7 +25,8 @@ Updates since v1.6.1
 * gitweb updates, including a new patch view and RSS/Atom feed
   improvements.
 
 * gitweb updates, including a new patch view and RSS/Atom feed
   improvements.
 
-(portability)
+* (contrib) git.el updates for better XEmacs compatibility; vc-git.el
+  is not shiped with git anymore (it is part of official Emacs)
 
 (performance)
 
 
 (performance)
 
@@ -22,6 +37,8 @@ Updates since v1.6.1
 
 * automatic typo correction works on aliases as well
 
 
 * automatic typo correction works on aliases as well
 
+* Initial support for "git notes" implemented.
+
 * @{-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}"
 * @{-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}"
@@ -29,12 +46,22 @@ Updates since v1.6.1
 
 * "git add -p" learned 'g'oto action to jump directly to a hunk.
 
 
 * "git add -p" learned 'g'oto action to jump directly to a hunk.
 
+* "git add -p" learned to find a hunk with given text with '/'.
+
+* "git add -p" optionally can be told to work with just the command letter
+  without Enter.
+
 * 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".
 
 * 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 am" learned --ignore-date option.
+
+* "git blame" aligns author names better when they are spelled in
+  non US-ASCII encoding.
+
 * "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 clone" now makes its best effort when cloning from an empty
   repository to set up configuration variables to refer to the remote
   repository.
@@ -48,6 +75,9 @@ Updates since v1.6.1
   the commit log message it serves via gitcvs.commitmsgannotation
   configuration.
 
   the commit log message it serves via gitcvs.commitmsgannotation
   configuration.
 
+* "git cvsserver" learned to handle 'noop' command some CVS clients seem
+  to expect to work.
+
 * "git diff" learned a new option --inter-hunk-context to coalesce close
   hunks together and show context between them.
 
 * "git diff" learned a new option --inter-hunk-context to coalesce close
   hunks together and show context between them.
 
@@ -56,20 +86,13 @@ Updates since v1.6.1
 
 * "git diff" learned --patience to run "patience diff" algorithm.
 
 
 * "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 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 fsck" now checks loose objects in alternate object stores, instead
+  of misreporting them as missing.
 
 
-* "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 grep -w" and "git grep" for fixed strings have been optimized.
 
 * "git mergetool" learned -y(--no-prompt) option to disable prompting.
 
 
 * "git mergetool" learned -y(--no-prompt) option to disable prompting.
 
@@ -80,7 +103,8 @@ Updates since v1.6.1
   "git checkout" switches branches, taking the local changes while
   switching to another commit.
 
   "git checkout" switches branches, taking the local changes while
   switching to another commit.
 
-(internal)
+* "git tag" learned --contains that works the same way as the same option
+  from "git branch".
 
 
 Fixes since v1.6.1
 
 
 Fixes since v1.6.1
@@ -89,18 +113,34 @@ Fixes since v1.6.1
 All of the fixes in v1.6.1.X maintenance series are included in this
 release, unless otherwise noted.
 
 All of the fixes in v1.6.1.X maintenance series are included in this
 release, unless otherwise noted.
 
+Here are fixes that this release has, but have not been backported to
+v1.6.1.X series.
+
 * "git-add sub/file" when sub is a submodule incorrectly added the path to
   the superproject.
 
 * "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.
+* "git bundle" did not exclude annotated tags even when a range given
+  from the command line wanted to.
+
+* "git filter-branch" unnecessarily refused to work when you had
+  checked out a different commit from what is recorded in the superproject
+  index in a submodule.
+
+* "git filter-branch" incorrectly tried to update a nonexistent work tree
+  at the end when it is run in a bare repository.
+
+* "git mergetool" used to ignore autocrlf and other attributes
+  based content rewriting.
 
 * branch switching and merges had a silly bug that did not validate
   the correct directory when making sure an existing subdirectory is
   clean.
 
 
 * branch switching and merges had a silly bug that did not validate
   the correct directory when making sure an existing subdirectory is
   clean.
 
+* "git -p cmd" when cmd is not a built-in one left the display in funny state
+  when killed in the middle.
+
 --
 exec >/var/tmp/1
 --
 exec >/var/tmp/1
-O=v1.6.1.2-252-g8c95d3c
+O=v1.6.1.3-371-gc19923a
 echo O=$(git describe master)
 git shortlog --no-merges $O..master ^maint
 echo O=$(git describe master)
 git shortlog --no-merges $O..master ^maint