blob: 0fbc410428c77255d663b3a7a09a80b965a6bcea [file] [log] [blame]
Junio C Hamano89bdb3b2009-05-10 06:48:141GIT v1.6.4 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
Junio C Hamano89bdb3b2009-05-10 06:48:1425
26Updates since v1.6.3
27--------------------
28
29(subsystems)
30
Junio C Hamano9f10ed32009-05-26 08:38:5231 * gitweb Perl style clean-up.
32
33 * git-svn updates, including a new --authors-prog option to map author
Junio C Hamanof7151d52009-07-19 21:31:3334 names by invoking an external program, 'git svn reset' to unwind
Junio C Hamanoaa2cd762009-07-26 08:14:0135 'git svn fetch', support for more than one branches, documenting
36 of the useful --minimize-url feature, new "git svn gc" command, etc.
Junio C Hamano9f10ed32009-05-26 08:38:5237
38(portability)
39
40 * We feed iconv with "UTF-8" instead of "utf8"; the former is
Junio C Hamanof7151d52009-07-19 21:31:3341 understood more widely. Similarly updated test scripts to use
Junio C Hamanod594fb62009-07-25 09:09:5442 encoding names more widely understood (e.g. use "ISO8859-1" instead
Junio C Hamanof7151d52009-07-19 21:31:3343 of "ISO-8859-1").
44
45 * Various portability fixes/workarounds for different vintages of
46 SunOS, IRIX, and Windows.
47
48 * Git-over-ssh transport on Windows supports PuTTY plink and TortoisePlink.
Junio C Hamano9f10ed32009-05-26 08:38:5249
Junio C Hamano89bdb3b2009-05-10 06:48:1450(performance)
51
Junio C Hamanof7151d52009-07-19 21:31:3352 * Many repeated use of lstat() are optimized out in "checkout" codepath.
53
54 * git-status (and underlying git-diff-index --cached) are optimized
55 to take advantage of cache-tree information in the index.
56
Junio C Hamano89bdb3b2009-05-10 06:48:1457(usability, bells and whistles)
58
Junio C Hamano9f10ed32009-05-26 08:38:5259 * "git add --edit" lets users edit the whole patch text to fine-tune what
60 is added to the index.
61
Junio C Hamanof7151d52009-07-19 21:31:3362 * "git am" accepts StGIT series file as its input.
63
64 * "git bisect skip" skips to a more randomly chosen place in the hope
65 to avoid testing a commit that is too close to a commit that is
66 already known to be untestable.
67
68 * "git cvsexportcommit" learned -k option to stop CVS keywords expansion
69
70 * "git grep" learned -p option to show the location of the match using the
71 same context hunk marker "git diff" uses.
72
73 * https transport can optionally be told that the used client
74 certificate is password protected, in which case it asks the
75 password only once.
76
77 * "git imap-send" is IPv6 aware.
78
Junio C Hamanoaa2cd762009-07-26 08:14:0179 * "git log --graph" draws graphs more compactly by using horizontal lines
Junio C Hamano9f10ed32009-05-26 08:38:5280 when able.
81
82 * "git log --decorate" shows shorter refnames by stripping well-known
83 refs/* prefix.
84
Junio C Hamanof7151d52009-07-19 21:31:3385 * "git push $name" honors remote.$name.pushurl if present before
86 using remote.$name.url. In other words, the URL used for fetching
87 and pushing can be different.
88
Junio C Hamano9f10ed32009-05-26 08:38:5289 * "git send-email" understands quoted aliases in .mailrc files (might
90 have to be backported to 1.6.3.X).
91
92 * "git send-email" can fetch the sender address from the configuration
93 variable "sendmail.from" (and "sendmail.<identity>.from").
94
95 * "git show-branch" can color its output.
96
97 * "add" and "update" subcommands to "git submodule" learned --reference
98 option to use local clone with references.
99
Junio C Hamanof7151d52009-07-19 21:31:33100 * "git submodule update" learned --rebase option to update checked
101 out submodules by rebasing the local changes.
102
103 * "gitweb" can optionally use gravatar to adorn author/committer names.
104
Junio C Hamano89bdb3b2009-05-10 06:48:14105(developers)
106
Junio C Hamano9f10ed32009-05-26 08:38:52107 * A major part of the "git bisect" wrapper has moved to C.
Junio C Hamano89bdb3b2009-05-10 06:48:14108
Junio C Hamanoaa2cd762009-07-26 08:14:01109 * Formatting with the new version of AsciiDoc 8.4.1 is now supported.
110
Junio C Hamano89bdb3b2009-05-10 06:48:14111Fixes since v1.6.3
112------------------
113
114All of the fixes in v1.6.3.X maintenance series are included in this
115release, unless otherwise noted.
116
117Here are fixes that this release has, but have not been backported to
118v1.6.3.X series.
119
Junio C Hamanof7151d52009-07-19 21:31:33120 * "git diff-tree -r -t" used to omit new or removed directories from
121 the output. df533f3 (diff-tree -r -t: include added/removed
122 directories in the output, 2009-06-13) may need to be cherry-picked
123 to backport this fix.
124
Junio C Hamano9f10ed32009-05-26 08:38:52125 * The way Git.pm sets up a Repository object was not friendly to callers
126 that chdir around. It now internally records the repository location
127 as an absolute path when autodetected.
Junio C Hamano89bdb3b2009-05-10 06:48:14128
Junio C Hamanod594fb62009-07-25 09:09:54129 * Removing a section with "git config --remove-section", when its
130 section header has a variable definition on the same line, lost
131 that variable definition.
132
133 * "git repack" used to faithfully follow grafts and considered true
134 parents recorded in the commit object unreachable from the commit.
135 After such a repacking, you cannot remove grafts without corrupting
136 the repository.
137
Junio C Hamanoaa2cd762009-07-26 08:14:01138 * "git send-email" did not detect erroneous loops in alias expansion.
Junio C Hamanod594fb62009-07-25 09:09:54139
Junio C Hamano89bdb3b2009-05-10 06:48:14140---
141exec >/var/tmp/1
142echo O=$(git describe master)
Junio C Hamanoaa2cd762009-07-26 08:14:01143O=v1.6.4-rc2-31-g2ceb639
Junio C Hamano89bdb3b2009-05-10 06:48:14144git shortlog --no-merges $O..master ^maint