]> git.ipfire.org Git - thirdparty/git.git/blame - Documentation/RelNotes/1.6.3.txt
Merge branch 'sp/test-i18ngrep' into maint-2.43
[thirdparty/git.git] / Documentation / RelNotes / 1.6.3.txt
CommitLineData
0823ab47
JH
1GIT v1.6.3 Release Notes
2========================
3
a84bde92
JH
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
65175d9e 13 https://archive.kernel.org/oldwiki/git.wiki.kernel.org/index.php/GitFaq.html#non-bare
d23f9c8e 14 https://lore.kernel.org/git/7vbptlsuyv.fsf@gitster.siamese.dyndns.org/
a84bde92
JH
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
a1b1ae05
JH
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.
665d3e8f 31
a84bde92 32
0823ab47
JH
33Updates since v1.6.2
34--------------------
35
36(subsystems)
37
c965c029
JH
38* various git-svn updates.
39
503f4640
JH
40* git-gui updates, including an update to Russian translation, and a
41 fix to an infinite loop when showing an empty diff.
42
43* gitk updates, including an update to Russian translation and improved Windows
44 support.
45
0823ab47
JH
46(performance)
47
e986ceb0
JH
48* many uses of lstat(2) in the codepath for "git checkout" have been
49 optimized out.
50
0823ab47
JH
51(usability, bells and whistles)
52
77b96d6d
JH
53* Boolean configuration variable yes/no can be written as on/off.
54
e986ceb0
JH
55* rsync:/path/to/repo can be used to run git over rsync for local
56 repositories. It may not be useful in practice; meant primarily for
57 testing.
58
a1b1ae05
JH
59* http transport learned to prompt and use password when fetching from or
60 pushing to http://user@host.xz/ URL.
61
e986ceb0
JH
62* (msysgit) progress output that is sent over the sideband protocol can
63 be handled appropriately in Windows console.
64
d0baf91d
JH
65* "--pretty=<style>" option to the log family of commands can now be
66 spelled as "--format=<style>". In addition, --format=%formatstring
67 is a short-hand for --pretty=tformat:%formatstring.
68
e37347bb 69* "--oneline" is a synonym for "--pretty=oneline --abbrev-commit".
d0baf91d 70
77b96d6d
JH
71* "--graph" to the "git log" family can draw the commit ancestry graph
72 in colors.
73
d0baf91d
JH
74* If you realize that you botched the patch when you are editing hunks
75 with the 'edit' action in git-add -i/-p, you can abort the editor to
76 tell git not to apply it.
77
e37347bb
JH
78* @{-1} is a new way to refer to the last branch you were on introduced in
79 1.6.2, but the initial implementation did not teach this to a few
80 commands. Now the syntax works with "branch -m @{-1} newname".
81
d0baf91d
JH
82* git-archive learned --output=<file> option.
83
77b96d6d
JH
84* git-archive takes attributes from the tree being archived; strictly
85 speaking, this is an incompatible behaviour change, but is a good one.
86 Use --worktree-attributes option to allow it to read attributes from
87 the work tree as before (deprecated git-tar tree command always reads
88 attributes from the work tree).
89
d0baf91d
JH
90* git-bisect shows not just the number of remaining commits whose goodness
91 is unknown, but also shows the estimated number of remaining rounds.
92
f4e52f0b
JH
93* You can give --date=<format> option to git-blame.
94
c965c029 95* "git-branch -r" shows HEAD symref that points at a remote branch in
d0baf91d
JH
96 interest of each tracked remote repository.
97
c965c029
JH
98* "git-branch -v -v" is a new way to get list of names for branches and the
99 "upstream" branch for them.
100
d0baf91d
JH
101* git-config learned -e option to open an editor to edit the config file
102 directly.
103
f4e52f0b
JH
104* git-clone runs post-checkout hook when run without --no-checkout.
105
77b96d6d
JH
106* git-difftool is now part of the officially supported command, primarily
107 maintained by David Aguilar.
108
c965c029
JH
109* git-for-each-ref learned a new "upstream" token.
110
d0baf91d
JH
111* git-format-patch can be told to use attachment with a new configuration,
112 format.attach.
113
f4e52f0b
JH
114* git-format-patch can be told to produce deep or shallow message threads.
115
e37347bb
JH
116* git-format-patch can be told to always add sign-off with a configuration
117 variable.
118
e96f3689
JH
119* git-format-patch learned format.headers configuration to add extra
120 header fields to the output. This behaviour is similar to the existing
121 --add-header=<header> option of the command.
122
e37347bb
JH
123* git-format-patch gives human readable names to the attached files, when
124 told to send patches as attachments.
125
e986ceb0
JH
126* git-grep learned to highlight the found substrings in color.
127
d0baf91d
JH
128* git-imap-send learned to work around Thunderbird's inability to easily
129 disable format=flowed with a new configuration, imap.preformattedHTML.
130
131* git-rebase can be told to rebase the series even if your branch is a
132 descendant of the commit you are rebasing onto with --force-rebase
133 option.
134
f4e52f0b
JH
135* git-rebase can be told to report diffstat with the --stat option.
136
e986ceb0
JH
137* Output from git-remote command has been vastly improved.
138
c965c029
JH
139* "git remote update --prune $remote" updates from the named remote and
140 then prunes stale tracking branches.
141
d0baf91d
JH
142* git-send-email learned --confirm option to review the Cc: list before
143 sending the messages out.
144
145(developers)
146
147* Test scripts can be run under valgrind.
148
a1b1ae05
JH
149* Test scripts can be run with installed git.
150
f4e52f0b
JH
151* Makefile learned 'coverage' option to run the test suites with
152 coverage tracking enabled.
0823ab47 153
2346431e
CJ
154* Building the manpages with docbook-xsl between 1.69.1 and 1.71.1 now
155 requires setting DOCBOOK_SUPPRESS_SP to work around a docbook-xsl bug.
156 This workaround used to be enabled by default, but causes problems
e96f3689
JH
157 with newer versions of docbook-xsl. In addition, there are a few more
158 knobs you can tweak to work around issues with various versions of the
159 docbook-xsl package. See comments in Documentation/Makefile for details.
2346431e 160
f29ac4f1
JH
161* Support for building and testing a subset of git on a system without a
162 working perl has been improved.
163
164
0823ab47
JH
165Fixes since v1.6.2
166------------------
167
168All of the fixes in v1.6.2.X maintenance series are included in this
169release, unless otherwise noted.
170
171Here are fixes that this release has, but have not been backported to
172v1.6.2.X series.
173
77b96d6d
JH
174* "git-apply" rejected a patch that swaps two files (i.e. renames A to B
175 and B to A at the same time). May need to be backported by cherry
176 picking d8c81df and then 7fac0ee).
177
a1b1ae05
JH
178* The initial checkout did not read the attributes from the .gitattribute
179 file that is being checked out.
180
e986ceb0
JH
181* git-gc spent excessive amount of time to decide if an object appears
182 in a locally existing pack (if needed, backport by merging 69e020a).