merge-recursive --renormalize
[gitweb.git] / Documentation / RelNotes-1.6.3.txt
index 4353cbf8c32cf7384c8fffebbb63e8ca9764ada9..418c685cf8328a0dc128847a98c334b727a8d6f9 100644 (file)
@@ -22,12 +22,27 @@ 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.
 
+When the user does not tell "git push" what to push, it has always
+pushed matching refs.  For some people it is unexpected, and a new
+configuration variable push.default has been introduced to allow
+changing a different default behaviour.  To advertise the new feature,
+a big warning is issued if this is not configured and a git push without
+arguments is attempted.
+
 
 Updates since v1.6.2
 --------------------
 
 (subsystems)
 
+* various git-svn updates.
+
+* git-gui updates, including an update to Russian translation, and a
+  fix to an infinite loop when showing an empty diff.
+
+* gitk updates, including an update to Russian translation and improved Windows
+  support.
+
 (performance)
 
 * many uses of lstat(2) in the codepath for "git checkout" have been
@@ -35,10 +50,15 @@ Updates since v1.6.2
 
 (usability, bells and whistles)
 
+* Boolean configuration variable yes/no can be written as on/off.
+
 * rsync:/path/to/repo can be used to run git over rsync for local
   repositories.  It may not be useful in practice; meant primarily for
   testing.
 
+* http transport learned to prompt and use password when fetching from or
+  pushing to http://user@host.xz/ URL.
+
 * (msysgit) progress output that is sent over the sideband protocol can
   be handled appropriately in Windows console.
 
@@ -46,32 +66,63 @@ Updates since v1.6.2
   spelled as "--format=<style>".  In addition, --format=%formatstring
   is a short-hand for --pretty=tformat:%formatstring.
 
-* "--oneline" is a synonym for "--pretty=oneline --abbrev=commit".
+* "--oneline" is a synonym for "--pretty=oneline --abbrev-commit".
+
+* "--graph" to the "git log" family can draw the commit ancestry graph
+  in colors.
 
 * If you realize that you botched the patch when you are editing hunks
   with the 'edit' action in git-add -i/-p, you can abort the editor to
   tell git not to apply it.
 
+* @{-1} is a new way to refer to the last branch you were on introduced in
+  1.6.2, but the initial implementation did not teach this to a few
+  commands.  Now the syntax works with "branch -m @{-1} newname".
+
 * git-archive learned --output=<file> option.
 
+* git-archive takes attributes from the tree being archived; strictly
+  speaking, this is an incompatible behaviour change, but is a good one.
+  Use --worktree-attributes option to allow it to read attributes from
+  the work tree as before (deprecated git-tar tree command always reads
+  attributes from the work tree).
+
 * git-bisect shows not just the number of remaining commits whose goodness
   is unknown, but also shows the estimated number of remaining rounds.
 
 * You can give --date=<format> option to git-blame.
 
-* git-branch -r shows HEAD symref that points at a remote branch in
+* "git-branch -r" shows HEAD symref that points at a remote branch in
   interest of each tracked remote repository.
 
+* "git-branch -v -v" is a new way to get list of names for branches and the
+  "upstream" branch for them.
+
 * git-config learned -e option to open an editor to edit the config file
   directly.
 
 * git-clone runs post-checkout hook when run without --no-checkout.
 
+* git-difftool is now part of the officially supported command, primarily
+  maintained by David Aguilar.
+
+* git-for-each-ref learned a new "upstream" token.
+
 * git-format-patch can be told to use attachment with a new configuration,
   format.attach.
 
 * git-format-patch can be told to produce deep or shallow message threads.
 
+* git-format-patch can be told to always add sign-off with a configuration
+  variable.
+
+* git-format-patch learned format.headers configuration to add extra
+  header fields to the output.  This behaviour is similar to the existing
+  --add-header=<header> option of the command.
+
+* git-format-patch gives human readable names to the attached files, when
+  told to send patches as attachments.
+
 * git-grep learned to highlight the found substrings in color.
 
 * git-imap-send learned to work around Thunderbird's inability to easily
@@ -85,6 +136,9 @@ Updates since v1.6.2
 
 * Output from git-remote command has been vastly improved.
 
+* "git remote update --prune $remote" updates from the named remote and
+  then prunes stale tracking branches.
+
 * git-send-email learned --confirm option to review the Cc: list before
   sending the messages out.
 
@@ -92,9 +146,22 @@ Updates since v1.6.2
 
 * Test scripts can be run under valgrind.
 
+* Test scripts can be run with installed git.
+
 * Makefile learned 'coverage' option to run the test suites with
   coverage tracking enabled.
 
+* Building the manpages with docbook-xsl between 1.69.1 and 1.71.1 now
+  requires setting DOCBOOK_SUPPRESS_SP to work around a docbook-xsl bug.
+  This workaround used to be enabled by default, but causes problems
+  with newer versions of docbook-xsl.  In addition, there are a few more
+  knobs you can tweak to work around issues with various versions of the
+  docbook-xsl package.  See comments in Documentation/Makefile for details.
+
+* Support for building and testing a subset of git on a system without a
+  working perl has been improved.
+
+
 Fixes since v1.6.2
 ------------------
 
@@ -104,30 +171,12 @@ release, unless otherwise noted.
 Here are fixes that this release has, but have not been backported to
 v1.6.2.X series.
 
-* "git diff --pickaxe-regexp" did not count overlapping matches
-  correctly (backport by cherry-picking 50fd699).
+* "git-apply" rejected a patch that swaps two files (i.e. renames A to B
+  and B to A at the same time).  May need to be backported by cherry
+  picking d8c81df and then 7fac0ee).
 
-* "git-fetch" in a repository that was not cloned from anywhere said
-  it cannot find 'origin', which was hard to understand for new people.
+* The initial checkout did not read the attributes from the .gitattribute
+  file that is being checked out.
 
 * git-gc spent excessive amount of time to decide if an object appears
   in a locally existing pack (if needed, backport by merging 69e020a).
-
-* "git-ls-files --deleted" did not work well with GIT_DIR&GIT_WORK_TREE
-  (backport by cherry-picking 8ad3dae).
-
-* "git-read-tree A B C..." without -m option has been broken for a long time
-  (backport by merging jc/maint-1.6.0-read-tree-overlay)
-
-* 'git-submodule add' did not tolerate extra slashes and ./ in the
-  path it accepted from the command line; it now is more lenient
- (if needed, backport by merging db75ada).
-
-* git-send-email ignored --in-reply-to when --no-thread was given
-  (backport by merging tr/maint-1.6.0-send-email-irt)
-
----
-exec >/var/tmp/1
-O=v1.6.2.1-213-g7d4e3a7
-echo O=$(git describe master)
-git shortlog --no-merges $O..master ^maint