]>
Commit | Line | Data |
---|---|---|
78f8fbc9 JH |
1 | GIT v1.6.2 Release Notes |
2 | ======================== | |
3 | ||
621f1b4b JH |
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. | |
8 | ||
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: | |
12 | ||
075394e2 | 13 | http://git.or.cz/gitwiki/GitFaq#non-bare |
621f1b4b JH |
14 | http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007 |
15 | ||
075394e2 JH |
16 | for more details on the reason why this change is needed and the |
17 | transition plan. | |
18 | ||
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. | |
621f1b4b JH |
24 | |
25 | ||
78f8fbc9 JH |
26 | Updates since v1.6.1 |
27 | -------------------- | |
28 | ||
29 | (subsystems) | |
30 | ||
a34a9dbb JH |
31 | * git-svn updates. |
32 | ||
33 | * gitweb updates, including a new patch view and RSS/Atom feed | |
34 | improvements. | |
35 | ||
0ab9a8bb AJ |
36 | * (contrib/emacs) git.el now has commands for checking out a branch, |
37 | creating a branch, cherry-picking and reverting commits; vc-git.el | |
38 | is not shipped with git anymore (it is part of official Emacs). | |
78f8fbc9 JH |
39 | |
40 | (performance) | |
41 | ||
3cf3b838 JH |
42 | * pack-objects autodetects the number of CPUs available and uses threaded |
43 | version. | |
44 | ||
78f8fbc9 JH |
45 | (usability, bells and whistles) |
46 | ||
a34a9dbb JH |
47 | * automatic typo correction works on aliases as well |
48 | ||
49 | * @{-1} is a way to refer to the last branch you were on. This is | |
50 | accepted not only where an object name is expected, but anywhere | |
075394e2 JH |
51 | a branch name is expected and acts as if you typed the branch name. |
52 | E.g. "git branch --track mybranch @{-1}", "git merge @{-1}", and | |
53 | "git rev-parse --symbolic-full-name @{-1}" would work as expected. | |
54 | ||
55 | * When refs/remotes/origin/HEAD points at a remote tracking branch that | |
56 | has been pruned away, many git operations issued warning when they | |
57 | internally enumerated the refs. We now warn only when you say "origin" | |
58 | to refer to that pruned branch. | |
59 | ||
60 | * The location of .mailmap file can be configured, and its file format was | |
61 | enhanced to allow mapping an incorrect e-mail field as well. | |
a34a9dbb JH |
62 | |
63 | * "git add -p" learned 'g'oto action to jump directly to a hunk. | |
64 | ||
621f1b4b JH |
65 | * "git add -p" learned to find a hunk with given text with '/'. |
66 | ||
67 | * "git add -p" optionally can be told to work with just the command letter | |
68 | without Enter. | |
69 | ||
a34a9dbb JH |
70 | * when "git am" stops upon a patch that does not apply, it shows the |
71 | title of the offending patch. | |
72 | ||
73 | * "git am --directory=<dir>" and "git am --reject" passes these options | |
74 | to underlying "git apply". | |
75 | ||
621f1b4b JH |
76 | * "git am" learned --ignore-date option. |
77 | ||
78 | * "git blame" aligns author names better when they are spelled in | |
79 | non US-ASCII encoding. | |
80 | ||
a34a9dbb JH |
81 | * "git clone" now makes its best effort when cloning from an empty |
82 | repository to set up configuration variables to refer to the remote | |
83 | repository. | |
84 | ||
85 | * "git checkout -" is a shorthand for "git checkout @{-1}". | |
3cf3b838 | 86 | |
a34a9dbb JH |
87 | * "git cherry" defaults to whatever the current branch is tracking (if |
88 | exists) when the <upstream> argument is not given. | |
3cf3b838 | 89 | |
a34a9dbb JH |
90 | * "git cvsserver" can be told not to add extra "via git-CVS emulator" to |
91 | the commit log message it serves via gitcvs.commitmsgannotation | |
92 | configuration. | |
3cf3b838 | 93 | |
621f1b4b JH |
94 | * "git cvsserver" learned to handle 'noop' command some CVS clients seem |
95 | to expect to work. | |
96 | ||
a34a9dbb | 97 | * "git diff" learned a new option --inter-hunk-context to coalesce close |
3cf3b838 JH |
98 | hunks together and show context between them. |
99 | ||
a34a9dbb JH |
100 | * The definition of what constitutes a word for "git diff --color-words" |
101 | can be customized via gitattributes, command line or a configuration. | |
102 | ||
103 | * "git diff" learned --patience to run "patience diff" algorithm. | |
104 | ||
a34a9dbb | 105 | * "git filter-branch" learned --prune-empty option that discards commits |
3cf3b838 JH |
106 | that do not change the contents. |
107 | ||
621f1b4b JH |
108 | * "git fsck" now checks loose objects in alternate object stores, instead |
109 | of misreporting them as missing. | |
a34a9dbb | 110 | |
075394e2 JH |
111 | * "git gc --prune" was resurrected to allow "git gc --no-prune" and |
112 | giving non-default expiration period e.g. "git gc --prune=now". | |
113 | ||
621f1b4b | 114 | * "git grep -w" and "git grep" for fixed strings have been optimized. |
3cf3b838 | 115 | |
a34a9dbb JH |
116 | * "git mergetool" learned -y(--no-prompt) option to disable prompting. |
117 | ||
118 | * "git rebase -i" can transplant a history down to root to elsewhere | |
119 | with --root option. | |
3cf3b838 | 120 | |
a34a9dbb | 121 | * "git reset --merge" is a new mode that works similar to the way |
3cf3b838 JH |
122 | "git checkout" switches branches, taking the local changes while |
123 | switching to another commit. | |
124 | ||
075394e2 JH |
125 | * "git submodule update" learned --no-fetch option. |
126 | ||
621f1b4b JH |
127 | * "git tag" learned --contains that works the same way as the same option |
128 | from "git branch". | |
78f8fbc9 JH |
129 | |
130 | ||
131 | Fixes since v1.6.1 | |
132 | ------------------ | |
133 | ||
134 | All of the fixes in v1.6.1.X maintenance series are included in this | |
135 | release, unless otherwise noted. | |
136 | ||
621f1b4b JH |
137 | Here are fixes that this release has, but have not been backported to |
138 | v1.6.1.X series. | |
139 | ||
3cf3b838 JH |
140 | * "git-add sub/file" when sub is a submodule incorrectly added the path to |
141 | the superproject. | |
142 | ||
621f1b4b JH |
143 | * "git bundle" did not exclude annotated tags even when a range given |
144 | from the command line wanted to. | |
145 | ||
146 | * "git filter-branch" unnecessarily refused to work when you had | |
147 | checked out a different commit from what is recorded in the superproject | |
148 | index in a submodule. | |
149 | ||
150 | * "git filter-branch" incorrectly tried to update a nonexistent work tree | |
151 | at the end when it is run in a bare repository. | |
152 | ||
661763ab JH |
153 | * "git gc" did not work if your repository was created with an ancient git |
154 | and never had any pack files in it before. | |
155 | ||
621f1b4b JH |
156 | * "git mergetool" used to ignore autocrlf and other attributes |
157 | based content rewriting. | |
3cf3b838 | 158 | |
3cf3b838 JH |
159 | * branch switching and merges had a silly bug that did not validate |
160 | the correct directory when making sure an existing subdirectory is | |
161 | clean. | |
162 | ||
621f1b4b JH |
163 | * "git -p cmd" when cmd is not a built-in one left the display in funny state |
164 | when killed in the middle. |