]>
Commit | Line | Data |
---|---|---|
a2082dbd JH |
1 | Git v2.45 Release Notes |
2 | ======================= | |
3 | ||
4 | Backward Compatibility Notes | |
5 | ||
6 | UI, Workflows & Features | |
7 | ||
8 | * Integrate the reftable code into the refs framework as a backend. | |
9 | With "git init --ref-format=reftable", hopefully it would be a lot | |
10 | more efficient to manage a repository with many references. | |
11 | ||
12 | * "git checkout -p" and friends learned that that "@" is a synonym | |
13 | for "HEAD". | |
14 | ||
0f9d4d28 JH |
15 | * Variants of vimdiff learned to honor mergetool.<variant>.layout |
16 | settings. | |
17 | ||
b387623c JH |
18 | * "git reflog" learned a "list" subcommand that enumerates known reflogs. |
19 | ||
43072b4c JH |
20 | * When a merge conflicted at a submodule, merge-ort backend used to |
21 | unconditionally give a lengthy message to suggest how to resolve | |
22 | it. Now the message can be squelched as an advice message. | |
23 | ||
24 | * "git for-each-ref" learned "--include-root-refs" option to show | |
25 | even the stuff outside the 'refs/' hierarchy. | |
26 | ||
e09f1254 JH |
27 | * "git rev-list --missing=print" has learned to optionally take |
28 | "--allow-missing-tips", which allows the objects at the starting | |
29 | points to be missing. | |
30 | ||
31 | * "git merge-tree" has learned that the three trees involved in the | |
32 | 3-way merge only need to be trees, not necessarily commits. | |
33 | ||
34 | * "git log --merge" learned to pay attention to CHERRY_PICK_HEAD and | |
35 | other kinds of *_HEAD pseudorefs. | |
36 | ||
2953d95d JH |
37 | * Platform specific tweaks for OS/390 has been added to |
38 | config.mak.uname. | |
39 | ||
a2082dbd JH |
40 | |
41 | Performance, Internal Implementation, Development Support etc. | |
42 | ||
43 | * The code to iterate over refs with the reftable backend has seen | |
44 | some optimization. | |
45 | ||
46 | * More tests that are marked as "ref-files only" have been updated to | |
47 | improve test coverage of reftable backend. | |
48 | ||
0f9d4d28 JH |
49 | * Some parts of command line completion script (in contrib/) have |
50 | been micro-optimized. | |
51 | ||
b387623c JH |
52 | * The way placeholders are to be marked-up in documentation have been |
53 | specified; use "_<placeholder>_" to typeset the word inside a pair | |
54 | of <angle-brakets> emphasized. | |
55 | ||
e09f1254 JH |
56 | * "git --no-lazy-fetch cmd" allows to run "cmd" while disabling lazy |
57 | fetching of objects from the promisor remote, which may be handy | |
58 | for debugging. | |
59 | ||
4f9b731b JH |
60 | * The implementation in "git clean" that makes "-n" and "-i" ignore |
61 | clean.requireForce has been simplified, together with the | |
62 | documentation. | |
63 | ||
64 | * The code to iterate over refs with the reftable backend has seen | |
65 | some optimization. | |
66 | ||
2953d95d JH |
67 | * Uses of xwrite() helper have been audited and updated for better |
68 | error checking and simpler code. | |
69 | ||
a2082dbd JH |
70 | |
71 | Fixes since v2.44 | |
72 | ----------------- | |
73 | ||
74 | * "git apply" on a filesystem without filemode support have learned | |
75 | to take a hint from what is in the index for the path, even when | |
76 | not working with the "--index" or "--cached" option, when checking | |
77 | the executable bit match what is required by the preimage in the | |
78 | patch. | |
79 | (merge 45b625142d cp/apply-core-filemode later to maint). | |
80 | ||
81 | * "git column" has been taught to reject negative padding value, as | |
82 | it would lead to nonsense behaviour including division by zero. | |
83 | (merge 76fb807faa kh/column-reject-negative-padding later to maint). | |
84 | ||
0f9d4d28 JH |
85 | * "git am --help" now tells readers what actions are available in |
86 | "git am --whitespace=<action>", in addition to saying that the | |
87 | option is passed through to the underlying "git apply". | |
88 | (merge a171dac734 jc/am-whitespace-doc later to maint). | |
89 | ||
90 | * "git tag --column" failed to check the exit status of its "git | |
91 | column" invocation, which has been corrected. | |
92 | (merge 92e66478fc rj/tag-column-fix later to maint). | |
93 | ||
94 | * Credential helper based on libsecret (in contrib/) has been updated | |
95 | to handle an empty password correctly. | |
96 | (merge 8f1f2023b7 mh/libsecret-empty-password-fix later to maint). | |
97 | ||
b387623c JH |
98 | * "git difftool --dir-diff" learned to honor the "--trust-exit-code" |
99 | option; it used to always exit with 0 and signalled success. | |
100 | (merge eb84c8b6ce ps/difftool-dir-diff-exit-code later to maint). | |
101 | ||
43072b4c JH |
102 | * The code incorrectly attempted to use textconv cache when asked, |
103 | even when we are not running in a repository, which has been | |
104 | corrected. | |
105 | (merge affe355fe7 jk/textconv-cache-outside-repo-fix later to maint). | |
106 | ||
107 | * Remove an empty file that shouldn't have been added in the first | |
108 | place. | |
109 | (merge 4f66942215 js/remove-cruft-files later to maint). | |
110 | ||
111 | * The logic to access reflog entries by date and number had ugly | |
112 | corner cases at the boundaries, which have been cleaned up. | |
113 | (merge 5edd126720 jk/reflog-special-cases-fix later to maint). | |
114 | ||
115 | * An error message from "git upload-pack", which responds to "git | |
116 | fetch" requests, had a trialing NUL in it, which has been | |
117 | corrected. | |
118 | (merge 3f4c7a0805 sg/upload-pack-error-message-fix later to maint). | |
119 | ||
120 | * Clarify wording in the CodingGuidelines that requires <git-compat-util.h> | |
121 | to be the first header file. | |
122 | (merge 4e89f0e07c jc/doc-compat-util later to maint). | |
123 | ||
e09f1254 JH |
124 | * "git commit -v --cleanup=scissors" used to add the scissors line |
125 | twice in the log message buffer, which has been corrected. | |
126 | (merge e90cc075cc jt/commit-redundant-scissors-fix later to maint). | |
127 | ||
128 | * A custom remote helper no longer cannot access the newly created | |
129 | repository during "git clone", which is a regression in Git 2.44. | |
130 | This has been corrected. | |
131 | (merge 199f44cb2e ps/remote-helper-repo-initialization-fix later to maint). | |
132 | ||
133 | * Various parts of upload-pack has been updated to bound the resource | |
134 | consumption relative to the size of the repository to protect from | |
135 | abusive clients. | |
136 | (merge 6cd05e768b jk/upload-pack-bounded-resources later to maint). | |
137 | ||
138 | * The upload-pack program, when talking over v2, accepted the | |
139 | packfile-uris protocol extension from the client, even if it did | |
140 | not advertise the capability, which has been corrected. | |
141 | (merge a922bfa3b5 jk/upload-pack-v2-capability-cleanup later to maint). | |
142 | ||
94511502 JH |
143 | * Make sure failure return from merge_bases_many() is properly caught. |
144 | (merge 25fd20eb44 js/merge-base-with-missing-commit later to maint). | |
145 | ||
4f9b731b JH |
146 | * FSMonitor client code was confused when FSEvents were given in a |
147 | different case on a case-insensitive filesystem, which has been | |
148 | corrected. | |
149 | (merge 29c139ce78 jh/fsmonitor-icase-corner-case-fix later to maint). | |
150 | ||
151 | * The "core.commentChar" configuration variable only allows an ASCII | |
152 | character, which was not clearly documented, which has been | |
153 | corrected. | |
154 | (merge fb7c556f58 kh/doc-commentchar-is-a-byte later to maint). | |
155 | ||
156 | * With release 2.44 we got rid of all uses of test_i18ngrep and there | |
157 | is no in-flight topic that adds a new use of it. Make a call to | |
158 | test_i18ngrep a hard failure, so that we can remove it at the end | |
159 | of this release cycle. | |
160 | (merge 381a83dfa3 jc/test-i18ngrep later to maint). | |
161 | ||
162 | * The command line completion script (in contrib/) learned to | |
163 | complete "git reflog" better. | |
164 | (merge 1284f9cc11 rj/complete-reflog later to maint). | |
165 | ||
166 | * The logic to complete the command line arguments to "git worktree" | |
167 | subcommand (in contrib/) has been updated to correctly honor things | |
168 | like "git -C dir" etc. | |
169 | (merge 3574816d98 rj/complete-worktree-paths-fix later to maint). | |
170 | ||
2953d95d JH |
171 | * When git refuses to create a branch because the proposed branch |
172 | name is not a valid refname, an advice message is given to refer | |
173 | the user to exact naming rules. | |
174 | (merge 8fbd903e58 kh/branch-ref-syntax-advice later to maint). | |
175 | ||
a2082dbd JH |
176 | * Other code cleanup, docfix, build fix, etc. |
177 | (merge f0e578c69c rs/use-xstrncmpz later to maint). | |
0f9d4d28 JH |
178 | (merge 83e6eb7d7a ba/credential-test-clean-fix later to maint). |
179 | (merge 64562d784d jb/doc-interactive-singlekey-do-not-need-perl later to maint). | |
b387623c JH |
180 | (merge c431a235e2 cp/t9146-use-test-path-helpers later to maint). |
181 | (merge 82d75402d5 ds/doc-send-email-capitalization later to maint). | |
182 | (merge 41bff66e35 jc/doc-add-placeholder-fix later to maint). | |
183 | (merge 6835f0efe9 jw/remote-doc-typofix later to maint). | |
184 | (merge 244001aa20 hs/rebase-not-in-progress later to maint). | |
43072b4c JH |
185 | (merge 2ca6c07db2 jc/no-include-of-compat-util-from-headers later to maint). |
186 | (merge 87bd7fbb9c rs/fetch-simplify-with-starts-with later to maint). | |
187 | (merge f39addd0d9 rs/name-rev-with-mempool later to maint). | |
188 | (merge 9a97b43e03 rs/submodule-prefix-simplify later to maint). | |
189 | (merge 40b8076462 ak/rebase-autosquash later to maint). | |
e09f1254 | 190 | (merge 3223204456 eg/add-uflags later to maint). |
94511502 | 191 | (merge 5f78d52dce es/config-doc-sort-sections later to maint). |
2953d95d | 192 | (merge 781fb7b4c2 as/option-names-in-messages later to maint). |