Documentation / RelNotes-1.6.3.txton commit Merge branch 'maint' (6da14ee)
   1GIT v1.6.3 Release Notes
   2========================
   3
   4With the next major release, "git push" into a branch that is
   5currently checked out will be refused by default.  You can choose
   6what should happen upon such a push by setting the configuration
   7variable receive.denyCurrentBranch in the receiving repository.
   8
   9To ease the transition plan, the receiving repository of such a
  10push running this release will issue a big warning when the
  11configuration variable is missing.  Please refer to:
  12
  13  http://git.or.cz/gitwiki/GitFaq#non-bare
  14  http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007
  15
  16for more details on the reason why this change is needed and the
  17transition plan.
  18
  19For a similar reason, "git push $there :$killed" to delete the branch
  20$killed in a remote repository $there, if $killed branch is the current
  21branch pointed at by its HEAD, gets a large warning.  You can choose what
  22should happen upon such a push by setting the configuration variable
  23receive.denyDeleteCurrent in the receiving repository.
  24
  25When the user does not tell "git push" what to push, it has always
  26pushed matching refs.  For some people it is unexpected, and a new
  27configuration variable push.default has been introduced to allow
  28changing a different default behaviour.  To advertise the new feature,
  29a big warning is issued if this is not configured and a git push without
  30arguments is attempted.
  31
  32
  33Updates since v1.6.2
  34--------------------
  35
  36(subsystems)
  37
  38(performance)
  39
  40* many uses of lstat(2) in the codepath for "git checkout" have been
  41  optimized out.
  42
  43(usability, bells and whistles)
  44
  45* rsync:/path/to/repo can be used to run git over rsync for local
  46  repositories.  It may not be useful in practice; meant primarily for
  47  testing.
  48
  49* http transport learned to prompt and use password when fetching from or
  50  pushing to http://user@host.xz/ URL.
  51
  52* (msysgit) progress output that is sent over the sideband protocol can
  53  be handled appropriately in Windows console.
  54
  55* "--pretty=<style>" option to the log family of commands can now be
  56  spelled as "--format=<style>".  In addition, --format=%formatstring
  57  is a short-hand for --pretty=tformat:%formatstring.
  58
  59* "--oneline" is a synonym for "--pretty=oneline --abbrev=commit".
  60
  61* If you realize that you botched the patch when you are editing hunks
  62  with the 'edit' action in git-add -i/-p, you can abort the editor to
  63  tell git not to apply it.
  64
  65* The number of commits shown in "you are ahead/behind your upstream"
  66  messages given by "git checkout" and "git status" used to count merge
  67  commits; now it doesn't.
  68
  69* git-archive learned --output=<file> option.
  70
  71* git-bisect shows not just the number of remaining commits whose goodness
  72  is unknown, but also shows the estimated number of remaining rounds.
  73
  74* You can give --date=<format> option to git-blame.
  75
  76* git-branch -r shows HEAD symref that points at a remote branch in
  77  interest of each tracked remote repository.
  78
  79* git-config learned -e option to open an editor to edit the config file
  80  directly.
  81
  82* git-clone runs post-checkout hook when run without --no-checkout.
  83
  84* git-fast-export choked when seeing a tag that does not point at commit.
  85
  86* git-format-patch can be told to use attachment with a new configuration,
  87  format.attach.
  88
  89* git-format-patch can be told to produce deep or shallow message threads.
  90
  91* git-format-patch learned format.headers configuration to add extra
  92  header fields to the output.  This behaviour is similar to the existing
  93  --add-header=<header> option of the command.
  94
  95* git-grep learned to highlight the found substrings in color.
  96
  97* git-imap-send learned to work around Thunderbird's inability to easily
  98  disable format=flowed with a new configuration, imap.preformattedHTML.
  99
 100* git-rebase can be told to rebase the series even if your branch is a
 101  descendant of the commit you are rebasing onto with --force-rebase
 102  option.
 103
 104* git-rebase can be told to report diffstat with the --stat option.
 105
 106* Output from git-remote command has been vastly improved.
 107
 108* git-repack (invoked from git-gc) did not work as nicely as it should in
 109  a repository that borrows objects from neighbours via alternates
 110  mechanism especially when some packs are marked with the ".keep" flag
 111  to prevent them from being repacked.
 112
 113* git-send-email learned --confirm option to review the Cc: list before
 114  sending the messages out.
 115
 116(developers)
 117
 118* Test scripts can be run under valgrind.
 119
 120* Test scripts can be run with installed git.
 121
 122* Makefile learned 'coverage' option to run the test suites with
 123  coverage tracking enabled.
 124
 125* Building the manpages with docbook-xsl between 1.69.1 and 1.71.1 now
 126  requires setting DOCBOOK_SUPPRESS_SP to work around a docbook-xsl bug.
 127  This workaround used to be enabled by default, but causes problems
 128  with newer versions of docbook-xsl.  In addition, there are a few more
 129  knobs you can tweak to work around issues with various versions of the
 130  docbook-xsl package.  See comments in Documentation/Makefile for details.
 131
 132Fixes since v1.6.2
 133------------------
 134
 135All of the fixes in v1.6.2.X maintenance series are included in this
 136release, unless otherwise noted.
 137
 138Here are fixes that this release has, but have not been backported to
 139v1.6.2.X series.
 140
 141* The initial checkout did not read the attributes from the .gitattribute
 142  file that is being checked out.
 143
 144* git-gc spent excessive amount of time to decide if an object appears
 145  in a locally existing pack (if needed, backport by merging 69e020a).
 146
 147---
 148exec >/var/tmp/1
 149O=v1.6.2.2-403-g8130949
 150echo O=$(git describe master)
 151git shortlog --no-merges $O..master ^maint