Update draft release notes to 1.6.3
[git/git-svn.git] / Documentation / RelNotes-1.6.3.txt
blobf0a2e41c71719683be316ae733b83c5512ebc134
1 GIT v1.6.3 Release Notes
2 ========================
4 With the next major release, "git push" into a branch that is
5 currently checked out will be refused by default.  You can choose
6 what should happen upon such a push by setting the configuration
7 variable receive.denyCurrentBranch in the receiving repository.
9 To ease the transition plan, the receiving repository of such a
10 push running this release will issue a big warning when the
11 configuration variable is missing.  Please refer to:
13   http://git.or.cz/gitwiki/GitFaq#non-bare
14   http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007
16 for more details on the reason why this change is needed and the
17 transition plan.
19 For a similar reason, "git push $there :$killed" to delete the branch
20 $killed in a remote repository $there, if $killed branch is the current
21 branch pointed at by its HEAD, gets a large warning.  You can choose what
22 should happen upon such a push by setting the configuration variable
23 receive.denyDeleteCurrent in the receiving repository.
25 When the user does not tell "git push" what to push, it has always
26 pushed matching refs.  For some people it is unexpected, and a new
27 configuration variable push.default has been introduced to allow
28 changing a different default behaviour.  To advertise the new feature,
29 a big warning is issued if this is not configured and a git push without
30 arguments is attempted.
33 Updates since v1.6.2
34 --------------------
36 (subsystems)
38 (performance)
40 * many uses of lstat(2) in the codepath for "git checkout" have been
41   optimized out.
43 (usability, bells and whistles)
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.
49 * http transport learned to prompt and use password when fetching from or
50   pushing to http://user@host.xz/ URL.
52 * (msysgit) progress output that is sent over the sideband protocol can
53   be handled appropriately in Windows console.
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.
59 * "--oneline" is a synonym for "--pretty=oneline --abbrev=commit".
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.
65 * git-archive learned --output=<file> option.
67 * git-bisect shows not just the number of remaining commits whose goodness
68   is unknown, but also shows the estimated number of remaining rounds.
70 * You can give --date=<format> option to git-blame.
72 * git-branch -r shows HEAD symref that points at a remote branch in
73   interest of each tracked remote repository.
75 * git-config learned -e option to open an editor to edit the config file
76   directly.
78 * git-clone runs post-checkout hook when run without --no-checkout.
80 * git-format-patch can be told to use attachment with a new configuration,
81   format.attach.
83 * git-format-patch can be told to produce deep or shallow message threads.
85 * git-grep learned to highlight the found substrings in color.
87 * git-imap-send learned to work around Thunderbird's inability to easily
88   disable format=flowed with a new configuration, imap.preformattedHTML.
90 * git-rebase can be told to rebase the series even if your branch is a
91   descendant of the commit you are rebasing onto with --force-rebase
92   option.
94 * git-rebase can be told to report diffstat with the --stat option.
96 * Output from git-remote command has been vastly improved.
98 * git-send-email learned --confirm option to review the Cc: list before
99   sending the messages out.
101 (developers)
103 * Test scripts can be run under valgrind.
105 * Test scripts can be run with installed git.
107 * Makefile learned 'coverage' option to run the test suites with
108   coverage tracking enabled.
110 Fixes since v1.6.2
111 ------------------
113 All of the fixes in v1.6.2.X maintenance series are included in this
114 release, unless otherwise noted.
116 Here are fixes that this release has, but have not been backported to
117 v1.6.2.X series.
119 * "git-blame -S" did not quite work near the commits that were given
120   on the command line correctly (jc/maint-1.6.0-blame-s).
122 * The initial checkout did not read the attributes from the .gitattribute
123   file that is being checked out.
125 * git-diff feeds files in work-tree representation to external diff and
126   textconv (js/maint-diff-temp-smudge).
128 * git-gc spent excessive amount of time to decide if an object appears
129   in a locally existing pack (if needed, backport by merging 69e020a).
132 exec >/var/tmp/1
133 O=v1.6.2.1-399-gaa72a14
134 echo O=$(git describe master)
135 git shortlog --no-merges $O..master ^maint