Update draft release notes to 2.2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Sep 19, 2014 at 11:51 UTC
97b8860c071898d9e162678ea1035a8ced2f8b1f
1 file changed
+51
-12
Documentation/RelNotes/2.2.0.txt
+51
-12
@@ -23,6 +23,24 @@ UI, Workflows & Features
23
the difference between the base commit version and the working tree
24
version, which is in line with what "git show" gives.
25
26
+ * Sometimes users want to report a bug they experience on their
27
+ repository, but they are not at liberty to share the contents of
28
+ the repository. "fast-export" was taught an "--anonymize" option
29
+ to replace blob contents, names of people and paths and log
30
+ messages with bland and simple strings to help them.
31
+
32
+ * "log --date=iso" uses a slight variant of ISO 8601 format that is
33
+ made more human readable. A new "--date=iso-strict" option gives
34
+ datetime output that is more strictly conformant.
35
+
36
+ * A broken reimplementation of Git could write an invalid index that
37
+ records both stage #0 and higher stage entries for the same path.
38
+ We now notice and reject such an index, as there is no sensible
39
+ fallback (we do not know if the broken tool wanted to resolve and
40
+ forgot to remove higher stage entries, or if it wanted to unresolve
41
+ and forgot to remove the stage#0 entry).
42
+
43
+
44
Performance, Internal Implementation, etc.
45
46
* The API to manipulate the "refs" is currently undergoing a revamp
@@ -65,6 +83,10 @@ Performance, Internal Implementation, etc.
83
"write-tree" (used in "commit") and "diff-index --cached" (used in
84
"status").
85
86
+ * A common programming mistake to assign the same short option name
87
+ to two separate options is detected by parse_options() API to help
88
+ developers.
89
+
90
91
Also contains various documentation updates and code clean-ups.
92
@@ -79,7 +101,6 @@ notes for details).
101
* "git log --pretty/format=" with an empty format string did not
102
mean the more obvious "No output whatsoever" but "Use default
103
format", which was counterintuitive.
82
- (merge b9c7d6e jk/pretty-empty-format later to maint).
104
105
* Implementations of "tar" that do not understand an extended pax
106
header would extract the contents of it in a regular file; make
@@ -89,44 +110,62 @@ notes for details).
110
* "git -c section.var command" and "git -c section.var= command"
111
should pass the configuration differently (the former should be a
112
boolean true, the latter should be an empty string).
92
- (merge a789ca7 jk/command-line-config-empty-string later to maint).
113
114
* Applying a patch not generated by Git in a subdirectory used to
115
check the whitespace breakage using the attributes for incorrect
116
paths. Also whitespace checks were performed even for paths
117
excluded via "git apply --exclude=<path>" mechanism.
98
- (merge 477a08a jc/apply-ws-prefix later to maint).
118
119
* "git bundle create" with date-range specification were meant to
120
exclude tags outside the range, but it didn't.
102
- (merge 2c8544a lf/bundle-exclusion later to maint).
121
122
* "git add x" where x that used to be a directory has become a
123
symbolic link to a directory misbehaved.
106
- (merge ccad42d rs/refresh-beyond-symlink later to maint).
124
125
* The prompt script checked $GIT_DIR/ref/stash file to see if there
126
is a stash, which was a no-no.
110
- (merge 0fa7f01 jk/prompt-stash-could-be-packed later to maint).
127
128
* Pack-protocol documentation had a minor typo.
113
- (merge 5d146f7 sp/pack-protocol-doc-on-shallow later to maint).
129
130
* "git checkout -m" did not switch to another branch while carrying
131
the local changes forward when a path was deleted from the index.
117
- (merge 6a143aa jn/unpack-trees-checkout-m-carry-deletion later to maint).
132
133
* With sufficiently long refnames, "git fast-import" could have
134
overflown an on-stack buffer.
121
- (merge c252785 jk/fast-import-fixes later to maint).
135
136
* After "pack-refs --prune" packed refs at the top-level, it failed
137
to prune them.
125
- (merge afd11d3 jk/prune-top-level-refs-after-packing later to maint).
138
139
* Progress output from "git gc --auto" was visible in "git fetch -q".
128
- (merge 6fceed3 nd/fetch-pass-quiet-to-gc-child-process later to maint).
140
141
* We used to pass -1000 to poll(2), expecting it to also mean "no
142
timeout", which should be spelled as -1.
132
- (merge 6c71f8b et/spell-poll-infinite-with-minus-one-only later to maint).
143
+
144
+ * "git rebase" documentation was unclear that it is required to
145
+ specify on what <upstream> the rebase is to be done when telling it
146
+ to first check out <branch>.
147
+ (merge 95c6826 so/rebase-doc later to maint).
148
+
149
+ * "git push" over HTTP transport had an artificial limit on number of
150
+ refs that can be pushed imposed by the command line length.
151
+ (merge 26be19b jk/send-pack-many-refspecs later to maint).
152
+
153
+ * When receiving an invalid pack stream that records the same object
154
+ twice, multiple threads got confused due to a race.
155
+ (merge ab791dd jk/index-pack-threading-races later to maint).
156
+
157
+ * An attempt to remove the entire tree in the "git fast-import" input
158
+ stream caused it to misbehave.
159
+ (merge 2668d69 mb/fast-import-delete-root later to maint).
160
+
161
+ * Reachability check (used in "git prune" and friends) did not add a
162
+ detached HEAD as a starting point to traverse objects still in use.
163
+ (merge c40fdd0 mk/reachable-protect-detached-head later to maint).
164
+
165
+ * "git config --add section.var val" used to lose existing
166
+ section.var whose value was an empty string.
167
+ (merge c1063be ta/config-add-to-empty-or-true-fix later to maint).
168
+
169
+ * "git fsck" failed to report that it found corrupt objects via its
170
+ exit status in some cases.
171
+ (merge 30d1038 jk/fsck-exit-code-fix later to maint).