@@ -78,6 +78,13 @@ UI, Workflows & Features
78
78
been applied, but we probably would want to revisit this later, as
79
79
it hurts the common case of not failing at all.
80
80
81
+ * Input and preconditions to "git reset" has been loosened where
82
+ appropriate. "git reset $fromtree Makefile" requires $fromtree to
83
+ be any tree (it used to require it to be a commit), for example.
84
+ "git reset" (without options or parameters) used to error out when
85
+ you do not have any commits in your history, but it now gives you
86
+ an empty index (to match non-existent commit you are not even on).
87
+
81
88
* "git submodule" started learning a new mode to integrate with the
82
89
tip of the remote branch (as opposed to integrating with the commit
83
90
recorded in the superproject's gitlink).
@@ -90,6 +97,11 @@ Foreign Interface
90
97
91
98
* A new remote helper to interact with bzr has been added to contrib/.
92
99
100
+ * "git p4" got various bugfixes around its branch handling.
101
+
102
+ * The remote helper to interact with Hg in contrib/ has seen a few
103
+ fixes.
104
+
93
105
94
106
Performance, Internal Implementation, etc.
95
107
@@ -99,6 +111,11 @@ Performance, Internal Implementation, etc.
99
111
* Matching paths with common forms of pathspecs that contain wildcard
100
112
characters has been optimized further.
101
113
114
+ * "git reset" internals has been reworked and should be faster in
115
+ general. We tried to be careful not to break any behaviour but
116
+ there could be corner cases, especially when running the command
117
+ from a conflicted state, that we may have missed.
118
+
102
119
* The implementation of "imap-send" has been updated to reuse xml
103
120
quoting code from http-push codepath.
104
121
@@ -145,8 +162,10 @@ details).
145
162
146
163
* The attribute mechanism didn't allow limiting attributes to be
147
164
applied to only a single directory itself with "path/" like the
148
- exclude mechanism does.
149
- (merge 94bc671 ja/directory-attrs later to maint).
165
+ exclude mechanism does. The initial implementation of this that
166
+ was merged to 'maint' and 1.8.1.2 was with a severe performance
167
+ degradations and needs to merge a fix-up topic.
168
+ (merge 9db9eec nd/fix-directory-attrs-off-by-one later to maint).
150
169
151
170
* "git apply" misbehaved when fixing whitespace breakages by removing
152
171
excess trailing blank lines.
@@ -160,6 +179,14 @@ details).
160
179
streaming a zip archive, which confused some implementations of unzip.
161
180
(merge 5ea2c84 rs/zip-with-uncompressed-size-in-the-header later to maint).
162
181
182
+ * "git clean" showed what it was going to do, but sometimes end up
183
+ finding that it was not allowed to do so, which resulted in a
184
+ confusing output (e.g. after saying that it will remove an
185
+ untracked directory, it found an embedded git repository there
186
+ which it is not allowed to remove). It now performs the actions
187
+ and then reports the outcome more faithfully.
188
+ (merge f538a91 zk/clean-report-failure later to maint).
189
+
163
190
* When "git clone --separate-git-dir=$over_there" is interrupted, it
164
191
failed to remove the real location of the $GIT_DIR it created.
165
192
This was most visible when interrupting a submodule update.
@@ -185,6 +212,14 @@ details).
185
212
index, the cache-tree data structure got corrupted.
186
213
(merge eec3e7e nd/invalidate-i-t-a-cache-tree later to maint).
187
214
215
+ * "git clone" used to allow --bare and --separate-git-dir=$there
216
+ options at the same time, which was nonsensical.
217
+ (merge 95b63f1 nd/clone-no-separate-git-dir-with-bare later to maint).
218
+
219
+ * "git rebase --preserve-merges" lost empty merges in recent versions
220
+ of Git.
221
+ (merge 9869778 ph/rebase-preserve-all-merges later to maint).
222
+
188
223
* "git merge --no-edit" computed who were involved in the work done
189
224
on the side branch, even though that information is to be discarded
190
225
without getting seen in the editor.
0 commit comments