X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=Documentation%2FRelNotes-1.6.2.txt;h=ad060f4f8900dde20b66e1b6ef5b0187cdc82983;hb=01d386121758ac72aedd5f268feb763d53fc3cdf;hp=3151c85d880f520fbde338b8eaa0981e9ceaa510;hpb=a34a9dbbced36999496c52b43460825732d487ba;p=git.git diff --git a/Documentation/RelNotes-1.6.2.txt b/Documentation/RelNotes-1.6.2.txt index 3151c85d8..ad060f4f8 100644 --- a/Documentation/RelNotes-1.6.2.txt +++ b/Documentation/RelNotes-1.6.2.txt @@ -1,6 +1,28 @@ 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://git.or.cz/gitwiki/GitFaq#non-bare + http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007 + +for more details on the reason why this change is needed and the +transition plan. + +For a similar reason, "git push $there :$killed" to delete the branch +$killed in a remote repository $there, if $killed branch is the current +branch pointed at by its HEAD, gets a large warning. You can choose what +should happen upon such a push by setting the configuration variable +receive.denyDeleteCurrent in the receiving repository. + + Updates since v1.6.1 -------------------- @@ -11,7 +33,9 @@ Updates since v1.6.1 * gitweb updates, including a new patch view and RSS/Atom feed improvements. -(portability) +* (contrib/emacs) git.el now has commands for checking out a branch, + creating a branch, cherry-picking and reverting commits; vc-git.el + is not shipped with git anymore (it is part of official Emacs). (performance) @@ -24,17 +48,36 @@ Updates since v1.6.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}" - "git rev-parse --symbolic-full-name @{-1}". + a branch name is expected and acts as if you typed the branch name. + E.g. "git branch --track mybranch @{-1}", "git merge @{-1}", and + "git rev-parse --symbolic-full-name @{-1}" would work as expected. + +* When refs/remotes/origin/HEAD points at a remote tracking branch that + has been pruned away, many git operations issued warning when they + internally enumerated the refs. We now warn only when you say "origin" + to refer to that pruned branch. + +* The location of .mailmap file can be configured, and its file format was + enhanced to allow mapping an incorrect e-mail field as well. * "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=" 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. @@ -48,6 +91,9 @@ Updates since v1.6.1 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. @@ -56,20 +102,16 @@ Updates since v1.6.1 * "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 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 gc --prune" was resurrected to allow "git gc --no-prune" and + giving non-default expiration period e.g. "git gc --prune=now". -* "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. @@ -80,7 +122,10 @@ Updates since v1.6.1 "git checkout" switches branches, taking the local changes while switching to another commit. -(internal) +* "git submodule update" learned --no-fetch option. + +* "git tag" learned --contains that works the same way as the same option + from "git branch". Fixes since v1.6.1 @@ -89,18 +134,31 @@ Fixes since v1.6.1 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-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 gc" did not work if your repository was created with an ancient git + and never had any pack files in it before. + +* "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. --- -exec >/var/tmp/1 -O=v1.6.1.2-252-g8c95d3c -echo O=$(git describe master) -git shortlog --no-merges $O..master ^maint +* "git -p cmd" when cmd is not a built-in one left the display in funny state + when killed in the middle.