@@ -78,6 +78,13 @@ UI, Workflows & Features
7878 been applied, but we probably would want to revisit this later, as
7979 it hurts the common case of not failing at all.
8080
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+
8188 * "git submodule" started learning a new mode to integrate with the
8289 tip of the remote branch (as opposed to integrating with the commit
8390 recorded in the superproject's gitlink).
@@ -90,6 +97,11 @@ Foreign Interface
9097
9198 * A new remote helper to interact with bzr has been added to contrib/.
9299
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+
93105
94106Performance, Internal Implementation, etc.
95107
@@ -99,6 +111,11 @@ Performance, Internal Implementation, etc.
99111 * Matching paths with common forms of pathspecs that contain wildcard
100112 characters has been optimized further.
101113
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+
102119 * The implementation of "imap-send" has been updated to reuse xml
103120 quoting code from http-push codepath.
104121
@@ -145,8 +162,10 @@ details).
145162
146163 * The attribute mechanism didn't allow limiting attributes to be
147164 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).
150169
151170 * "git apply" misbehaved when fixing whitespace breakages by removing
152171 excess trailing blank lines.
@@ -160,6 +179,14 @@ details).
160179 streaming a zip archive, which confused some implementations of unzip.
161180 (merge 5ea2c84 rs/zip-with-uncompressed-size-in-the-header later to maint).
162181
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+
163190 * When "git clone --separate-git-dir=$over_there" is interrupted, it
164191 failed to remove the real location of the $GIT_DIR it created.
165192 This was most visible when interrupting a submodule update.
@@ -185,6 +212,14 @@ details).
185212 index, the cache-tree data structure got corrupted.
186213 (merge eec3e7e nd/invalidate-i-t-a-cache-tree later to maint).
187214
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+
188223 * "git merge --no-edit" computed who were involved in the work done
189224 on the side branch, even though that information is to be discarded
190225 without getting seen in the editor.
0 commit comments