What's cooking (2013/12 #03)
Junio C Hamano committed
Dec 12, 2013 at 16:54 UTC
e24105a9196fb231a145a34effecad66e89bd9bd
1 file changed
+319
-352
whats-cooking.txt
+319
-352
@@ -1,19 +1,16 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Dec 2013, #02; Fri, 6)
4
-X-master-at: 077f43447c4931dd2e7890f16e8728f7f7376b87
5
-X-next-at: 083d67c40460583eb33253efa92cc809789c8f9b
3
+Subject: What's cooking in git.git (Dec 2013, #03; Thu, 12)
4
+X-master-at: d7aced95cd681b761468635f8d2a8b82d7ed26fd
5
+X-next-at: aaad5e77ff44962de7a1fccb0c9def6b6dd228aa
6
7
-What's cooking in git.git (Dec 2013, #02; Fri, 6)
7
+What's cooking in git.git (Dec 2013, #03; Thu, 12)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
11
'-' are only in 'pu' (proposed updates) while commits prefixed with
12
'+' are in 'next'.
13
14
-The tip of 'next' has been rewound, ejecting a few topics that
15
-used to be there.
16
-
14
You can find the changes described here in the integration branches
15
of the repositories listed at
16
@@ -22,260 +19,280 @@ of the repositories listed at
19
--------------------------------------------------
20
[New Topics]
21
25
-* jn/git-gui-chmod+x (2013-11-25) 1 commit
26
- - git-gui: chmod +x po2msg, windows/git-gui.sh
22
+* bc/doc-merge-no-op-revert (2013-12-09) 1 commit
23
+ - Documentation: document pitfalls with 3-way merge
24
28
- Parked here until I get the same change back from the upstream
29
- git-gui tree.
25
+ Will merge to 'next'.
26
27
32
-* jn/gitk-chmod+x (2013-11-25) 1 commit
33
- - gitk: chmod +x po2msg
28
+* cc/replace-object-info (2013-12-12) 10 commits
29
+ - Documentation/git-replace: describe --format option
30
+ - builtin/replace: unset read_replace_refs
31
+ - t6050: add tests for listing with --format
32
+ - builtin/replace: teach listing using short, medium or full formats
33
+ - sha1_file: perform object replacement in sha1_object_info_extended()
34
+ - t6050: show that git cat-file --batch fails with replace objects
35
+ - sha1_object_info_extended(): add an "unsigned flags" parameter
36
+ - sha1_file.c: add lookup_replace_object_extended() to pass flags
37
+ - replace_object: don't check read_replace_refs twice
38
+ - rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECT
39
35
- Parked here until I get the same change back from the upstream gitk
36
- tree.
40
+ read_sha1_file() that is the workhorse to read the contents given
41
+ an object name honoured object replacements, but there is no
42
+ corresponding mechanism to sha1_object_info() that is used to
43
+ obtain the metainfo (e.g. type & size) about the object, leading
44
+ callers to weird inconsistencies.
45
46
+ Will merge to 'next'.
47
39
-* jk/name-pack-after-byte-representation (2013-12-05) 2 commits
40
- - pack-objects: name pack files after trailer hash
41
- - sha1write: make buffer const-correct
42
- (this branch is tangled with jk/pack-bitmap.)
48
49
+* fc/completion (2013-12-09) 1 commit
50
+ - completion: fix completion of certain aliases
51
45
-* nd/negative-pathspec (2013-12-06) 3 commits
46
- - pathspec.c: support adding prefix magic to a pathspec with mnemonic magic
47
- - Support pathspec magic :(exclude) and its short form :!
48
- - glossary-content.txt: rephrase magic signature part
49
-
52
+ Will merge to 'next'.
53
51
-* nd/transport-positive-depth-only (2013-12-06) 1 commit
52
- - clone,fetch: catch non positive --depth option value
54
55
+* fc/remote-helper-fixes (2013-12-09) 4 commits
56
+ - remote-hg: add tests for special filenames
57
+ - remote-hg: fix 'shared path' path
58
+ - remote-helpers: add extra safety checks
59
+ - remote-hg: avoid buggy strftime()
60
55
-* zk/difftool-counts (2013-12-06) 1 commit
56
- - difftool: display the number of files in the diff queue in the prompt
61
+ Will merge to 'next'.
62
58
---------------------------------------------------
59
-[Graduated to "master"]
63
61
-* ak/submodule-foreach-quoting (2013-09-27) 1 commit
62
- (merged to 'next' on 2013-10-14 at d77c5f1)
63
- + submodule foreach: skip eval for more than one argument
64
+* fc/trivial (2013-12-09) 4 commits
65
+ - remote: fix status with branch...rebase=preserve
66
+ - fetch: add missing documentation
67
+ - t: trivial whitespace cleanups
68
+ - abspath: trivial style fix
69
65
- A behavior change, but maybe a worthwhile one: "git submodule
66
- foreach" was treating its arguments as part of a single command to
67
- be concatenated and passed to a shell, making writing buggy scripts
68
- too easy.
70
+ Will merge to 'next'.
71
70
- This patch preserves the old "just pass it to the shell" behavior
71
- when a single argument is passed to 'git submodule foreach' and
72
- moves to a new "skip the shell and use the arguments passed
73
- unmolested" behavior when more than one argument is passed.
72
75
- The old behavior (always concatenating and passing to the shell)
76
- was similar to the 'ssh' command, while the new behavior (switching
77
- on the number of arguments) is what 'xterm -e' does.
73
+* jk/cat-file-regression-fix (2013-12-12) 2 commits
74
+ - cat-file: handle --batch format with missing type/size
75
+ - cat-file: pass expand_data to print_object_or_die
76
79
- May need more thought to make sure this change is advertised well;
80
- scripts that used multiple arguments but added their own extra
81
- layer of quoting are broken, and the users need to adjust them.
77
+ Will merge to 'next'.
78
79
84
-* bc/http-100-continue (2013-10-31) 3 commits
85
- (merged to 'next' on 2013-11-01 at e12ae23)
86
- + remote-curl: fix large pushes with GSSAPI
87
- + remote-curl: pass curl slot_results back through run_slot
88
- + http: return curl's AUTHAVAIL via slot_results
80
+* jk/pull-rebase-using-fork-point (2013-12-10) 2 commits
81
+ - rebase: use reflog to find common base with upstream
82
+ - pull: use merge-base --fork-point when appropriate
83
90
- Issue "100 Continue" responses to help use of GSS-Negotiate
91
- authentication scheme over HTTP transport when needed.
84
+ Will merge to 'next'.
85
86
94
-* jc/bundle (2013-11-12) 1 commit
95
- (merged to 'next' on 2013-11-21 at 535b046)
96
- + bundle: use argv-array
87
+* jk/rev-parse-double-dashes (2013-12-09) 2 commits
88
+ - rev-parse: be more careful with munging arguments
89
+ - rev-parse: correctly diagnose revision errors before "--"
90
98
- Code clean-up.
91
+ "git rev-parse <revs> -- <paths>" did not implement the usual
92
+ disambiguation rules the commands in the "git log" family used in
93
+ the same way.
94
95
+ Will merge to 'next'.
96
101
-* jc/merge-base-reflog (2013-10-29) 2 commits
102
- (merged to 'next' on 2013-11-01 at 6114764)
103
- + merge-base: teach "--fork-point" mode
104
- + merge-base: use OPT_CMDMODE and clarify the command line parsing
97
106
- Code the logic in "pull --rebase" that figures out a fork point
107
- from reflog entries in C.
98
+* mo/subtree-split-updates (2013-12-10) 3 commits
99
+ - subtree: add --edit option
100
+ - subtree: allow --squash and --message with push
101
+ - subtree: support split --rejoin --squash
102
103
+ Comments?
104
110
-* jc/ref-excludes (2013-11-01) 5 commits
111
- (merged to 'next' on 2013-11-04 at fac1ed0)
112
- + rev-parse: introduce --exclude=<glob> to tame wildcards
113
- + rev-list --exclude: export add/clear-ref-exclusion and ref-excluded API
114
- + rev-list --exclude: tests
115
- + document --exclude option
116
- + revision: introduce --exclude=<glob> to tame wildcards
105
118
- People often wished a way to tell "git log --branches" (and "git
119
- log --remotes --not --branches") to exclude some local branches
120
- from the expansion of "--branches" (similarly for "--tags", "--all"
121
- and "--glob=<pattern>"). Now they have one.
106
+* nd/remove-opt-boolean (2013-12-09) 1 commit
107
+ - parse-options: remove OPT_BOOLEAN
108
109
+ Will merge to 'next'.
110
124
-* jh/loose-object-dirs-creation-race (2013-10-28) 1 commit
125
- (merged to 'next' on 2013-11-01 at 3169b0f)
126
- + sha1_file.c:create_tmpfile(): Fix race when creating loose object dirs
111
128
- Two processes creating loose objects at the same time could have
129
- failed unnecessarily when they happened to have created objects
130
- whose names share the same first byte.
112
+* nd/shallow-clone (2013-12-10) 28 commits
113
+ - git-clone.txt: remove shallow clone limitations
114
+ - prune: clean .git/shallow after pruning objects
115
+ - clone: use git protocol for cloning shallow repo locally
116
+ - send-pack: support pushing from a shallow clone via http
117
+ - receive-pack: support pushing to a shallow clone via http
118
+ - smart-http: support shallow fetch/clone
119
+ - remote-curl: pass ref SHA-1 to fetch-pack as well
120
+ - send-pack: support pushing to a shallow clone
121
+ - receive-pack: allow pushes that update .git/shallow
122
+ - connected.c: add new variant that runs with --shallow-file
123
+ - add GIT_SHALLOW_FILE to propagate --shallow-file to subprocesses
124
+ - receive/send-pack: support pushing from a shallow clone
125
+ - receive-pack: reorder some code in unpack()
126
+ - fetch: add --update-shallow to accept refs that update .git/shallow
127
+ - upload-pack: make sure deepening preserves shallow roots
128
+ - fetch: support fetching from a shallow repository
129
+ - clone: support remote shallow repository
130
+ - fetch-pack.h: one statement per bitfield declaration
131
+ - fetch-pack.c: move shallow update code out of fetch_pack()
132
+ - shallow.c: steps 6 and 7 to select new commits for .git/shallow
133
+ - shallow.c: the 8 steps to select new commits for .git/shallow
134
+ - shallow.c: extend setup_*_shallow() to accept extra shallow commits
135
+ - connect.c: teach get_remote_heads to parse "shallow" lines
136
+ - make the sender advertise shallow commits to the receiver
137
+ - clone: prevent --reference to a shallow repository
138
+ - send-pack: forbid pushing from a shallow repository
139
+ - remote.h: replace struct extra_have_objects with struct sha1_array
140
+ - transport.h: remove send_pack prototype, already defined in send-pack.h
141
142
+ Fetching from a shallow-cloned repository used to be forbidden,
143
+ primarily because the codepaths involved were not carefully vetted
144
+ and we did not bother supporting such usage. This attempts to allow
145
+ object transfer out of a shallow-cloned repository in a controlled
146
+ way (i.e. the receiver become a shallow repository with truncated
147
+ history).
148
133
-* jk/remove-experimental-loose-object-support (2013-11-21) 1 commit
134
- (merged to 'next' on 2013-11-21 at d37bab7)
135
- + drop support for "experimental" loose objects
149
137
- Read-only support for experimental loose-object format, in which
138
- users could optionally choose to write in their loose objects for a
139
- short while between v1.4.3 to v1.5.3 era, has been dropped.
150
+* tg/diff-no-index-refactor (2013-12-12) 2 commits
151
+ - diff: don't read index when --no-index is given
152
+ - diff: move no-index detection to builtin/diff.c
153
154
+ "git diff ../else/where/A ../else/where/B" when ../else/where is
155
+ clearly outside the repository, and "git diff --no-index A B", do
156
+ not have to look at the index at all, but we used to read the index
157
+ unconditionally.
158
142
-* jk/replace-perl-in-built-scripts (2013-10-29) 1 commit
143
- (merged to 'next' on 2013-11-01 at 2384e29)
144
- + use @@PERL@@ in built scripts
159
+ Will merge to 'next'.
160
161
147
-* jk/robustify-parse-commit (2013-10-24) 6 commits
148
- (merged to 'next' on 2013-11-01 at 2bfbaab)
149
- + checkout: do not die when leaving broken detached HEAD
150
- + use parse_commit_or_die instead of custom message
151
- + use parse_commit_or_die instead of segfaulting
152
- + assume parse_commit checks for NULL commit
153
- + assume parse_commit checks commit->object.parsed
154
- + log_tree_diff: die when we fail to parse a commit
162
+* hv/submodule-ignore-fix (2013-12-06) 4 commits
163
+ - disable complete ignorance of submodules for index <-> HEAD diff
164
+ - always show committed submodules in summary after commit
165
+ - teach add -f option for ignored submodules
166
+ - fix 'git add' to skip submodules configured as ignored
167
168
+ Teach "git add" to be consistent with "git status" when changes to
169
+ submodules are set to be ignored, to avoid surprises after checking
170
+ with "git status" to see there isn't any change to be further added
171
+ and then see that "git add ." adds changes to them.
172
157
-* jk/two-way-merge-corner-case-fix (2013-11-04) 3 commits
158
- (merged to 'next' on 2013-11-04 at 79f4fb0)
159
- + t1005: add test for "read-tree --reset -u A B"
160
- + t1005: reindent
161
- + unpack-trees: fix "read-tree -u --reset A B" with conflicted index
162
-
163
- Fix a rather longstanding corner-case bug in twoway "reset to
164
- there" merge, which is most often seen in "git am --abort".
165
-
166
-
167
-* jl/submodule-update-retire-orig-flags (2013-11-11) 1 commit
168
- (merged to 'next' on 2013-11-13 at 4b70d15)
169
- + submodule update: remove unnecessary orig_flags variable
170
-
171
- Code clean-up.
173
+ I think a reroll is coming, so this may need to be replaced, but I
174
+ needed some practice with heavy conflict resolution. It conflicts
175
+ with two changes to "git add" that have been scheduled for Git 2.0
176
+ quite badly, and I think I got the resolution right this time (a
177
+ few nights ago I tried and failed and that was why it hasn't been
178
+ merged to 'pu' so far).
179
180
+--------------------------------------------------
181
+[Graduated to "master"]
182
174
-* jn/mediawiki-makefile-updates (2013-11-11) 4 commits
175
- (merged to 'next' on 2013-11-13 at 71c8d20)
176
- + git-remote-mediawiki build: handle DESTDIR/INSTLIBDIR with whitespace
177
- + git-remote-mediawiki build: make 'install' command configurable
178
- + git-remote-mediawiki: honor DESTDIR in "make install"
179
- + git-remote-mediawiki: do not remove installed files in "clean" target
183
+* cl/p4-use-diff-tree (2013-11-22) 1 commit
184
+ (merged to 'next' on 2013-12-06 at fc3c89e)
185
+ + git p4: Use git diff-tree instead of format-patch
186
181
- Build and installation procedure clean-up.
187
+ Originally merged to 'next' on 2013-11-27
188
189
184
-* jn/perl-lib-extra (2013-11-18) 2 commits
185
- (merged to 'next' on 2013-11-20 at 8c90afae)
186
- + Makefile: add PERLLIB_EXTRA variable that adds to default perl path
187
- + Makefile: rebuild perl scripts when perl paths change
190
+* cn/thin-push-capability (2013-11-25) 1 commit
191
+ (merged to 'next' on 2013-12-06 at a7ae524)
192
+ + send-pack: don't send a thin pack to a server which doesn't support it
193
189
- The new PERLLIB_EXTRA makefile variable can be used to specify
190
- additional directories Perl modules (e.g. the ones necessary to run
191
- git-svn) are installed on the platform when building.
194
+ Allow receive-pack to insist on receiving a fat pack from "git
195
+ push" clients.
196
197
194
-* nd/magic-pathspec (2013-11-20) 1 commit
195
- (merged to 'next' on 2013-11-21 at f914a30)
196
- + diff: restrict pathspec limitations to diff b/f case only
198
+* jk/remove-deprecated (2013-12-05) 6 commits
199
+ (merged to 'next' on 2013-12-06 at c0c91a2)
200
+ + Sync with 1.8.5
201
+ + stop installing git-tar-tree link
202
+ + peek-remote: remove deprecated alias of ls-remote
203
+ + lost-found: remove deprecated command
204
+ + tar-tree: remove deprecated command
205
+ + repo-config: remove deprecated alias for "git config"
206
+ (this branch is used by cc/starts-n-ends-with and cc/starts-n-ends-with-endgame.)
207
198
- "git diff -- ':(icase)makefile'" was unnecessarily rejected at the
199
- command line parser.
208
+ Remove commands that have long been deprecated.
209
201
- Needs to be merged to 'maint' later.
210
211
+* jn/scripts-updates (2013-11-26) 7 commits
212
+ (merged to 'next' on 2013-12-06 at 60a7026)
213
+ + remove #!interpreter line from shell libraries
214
+ + test: replace shebangs with descriptions in shell libraries
215
+ + test: make FILEMODE a lazy prereq
216
+ + contrib: remove git-p4import
217
+ + mark contributed hooks executable
218
+ + mark perl test scripts executable
219
+ + mark Windows build scripts executable
220
204
-* nd/wt-status-align-i18n (2013-11-06) 1 commit
205
- (merged to 'next' on 2013-11-13 at b033aa0)
206
- + wt-status: take the alignment burden off translators
221
208
- An attempt to automatically align the names in the "git status"
209
- output, taking the display width of (translated) section labels
210
- into account.
222
+* mh/fetch-tags-in-addition-to-normal-refs (2013-10-30) 23 commits
223
+ (merged to 'next' on 2013-12-06 at 3b9c44a)
224
+ + fetch: improve the error messages emitted for conflicting refspecs
225
+ + handle_duplicate(): mark error message for translation
226
+ + ref_remote_duplicates(): extract a function handle_duplicate()
227
+ + ref_remove_duplicates(): simplify loop logic
228
+ + t5536: new test of refspec conflicts when fetching
229
+ + ref_remove_duplicates(): avoid redundant bisection
230
+ + git-fetch.txt: improve description of tag auto-following
231
+ + fetch-options.txt: simplify ifdef/ifndef/endif usage
232
+ + fetch, remote: properly convey --no-prune options to subprocesses
233
+ + builtin/remote.c:update(): use struct argv_array
234
+ + builtin/remote.c: reorder function definitions
235
+ + query_refspecs(): move some constants out of the loop
236
+ + fetch --prune: prune only based on explicit refspecs
237
+ + fetch --tags: fetch tags *in addition to* other stuff
238
+ + fetch: only opportunistically update references based on command line
239
+ + get_expanded_map(): avoid memory leak
240
+ + get_expanded_map(): add docstring
241
+ + builtin/fetch.c: reorder function definitions
242
+ + get_ref_map(): rename local variables
243
+ + api-remote.txt: correct section "struct refspec"
244
+ + t5510: check that "git fetch --prune --tags" does not prune branches
245
+ + t5510: prepare test refs more straightforwardly
246
+ + t5510: use the correct tag name in test
247
248
+ Originally merged to 'next' on 2013-11-06
249
213
-* nv/parseopt-opt-arg (2013-10-31) 2 commits
214
- (merged to 'next' on 2013-11-01 at cd2afd9)
215
- + rev-parse --parseopt: add the --stuck-long mode
216
- + Use the word 'stuck' instead of 'sticked'
250
+ The "--tags" option to "git fetch" used to be literally a synonym to
251
+ a "refs/tags/*:refs/tags/*" refspec, which meant that (1) as an
252
+ explicit refspec given from the command line, it silenced the lazy
253
+ "git fetch" default that is configured, and (2) also as an explicit
254
+ refspec given from the command line, it interacted with "--prune"
255
+ to remove any tag that the remote we are fetching from does not
256
+ have.
257
218
- Enhance "rev-parse --parseopt" mode to help parsing options with
219
- an optional parameter.
258
+ This demotes it to an option; with it, we fetch all tags in
259
+ addition to what would be fetched without the option, and it does
260
+ not interact with the decision "--prune" makes to see what
261
+ remote-tracking refs the local has are missing the remote
262
+ counterpart.
263
264
222
-* rh/remote-hg-bzr-updates (2013-11-18) 8 commits
223
- (merged to 'next' on 2013-11-20 at a36f3c4)
224
- + remote-bzr, remote-hg: fix email address regular expression
225
- + test-hg.sh: help user correlate verbose output with email test
226
- + test-hg.sh: fix duplicate content strings in author tests
227
- + test-hg.sh: avoid obsolete 'test' syntax
228
- + test-hg.sh: eliminate 'local' bashism
229
- + test-bzr.sh, test-hg.sh: prepare for change to push.default=simple
230
- + test-bzr.sh, test-hg.sh: allow running from any dir
231
- + test-lib.sh: convert $TEST_DIRECTORY to an absolute path
265
+* rs/doc-submitting-patches (2013-11-27) 1 commit
266
+ (merged to 'next' on 2013-12-06 at 0628818)
267
+ + SubmittingPatches: document how to handle multiple patches
268
269
234
-* rr/for-each-ref-decoration (2013-11-19) 6 commits
235
- (merged to 'next' on 2013-11-21 at ee7b0ed)
236
- + for-each-ref: avoid color leakage
237
- + for-each-ref: introduce %(color:...) for color
238
- + for-each-ref: introduce %(upstream:track[short])
239
- + for-each-ref: introduce %(HEAD) asterisk marker
240
- + t6300 (for-each-ref): don't hardcode SHA-1 hexes
241
- + t6300 (for-each-ref): clearly demarcate setup
270
+* tr/commit-slab-cleanup (2013-12-02) 3 commits
271
+ (merged to 'next' on 2013-12-06 at faee247)
272
+ + commit-slab: sizeof() the right type in xrealloc
273
+ + commit-slab: declare functions "static inline"
274
+ + commit-slab: document clear_$slabname()
275
243
- "git for-each-ref --format=..." learned a few formatting directives;
244
- e.g. "%(color:red)%(HEAD)%(color:reset) %(refname:short) %(subject)".
276
277
+* tr/config-multivalue-lift-max (2013-12-06) 1 commit
278
+ (merged to 'next' on 2013-12-06 at 92afee2)
279
+ + config: arbitrary number of matches for --unset and --replace-all
280
247
-* sb/sha1-loose-object-info-check-existence (2013-11-06) 1 commit
248
- (merged to 'next' on 2013-11-06 at 1ea5b18)
249
- + sha1_loose_object_info(): do not return success on missing object
281
251
- "git cat-file --batch-check=ok" did not check the existence of the
252
- named object.
282
+* tr/doc-git-cherry (2013-11-27) 1 commit
283
+ (merged to 'next' on 2013-12-06 at 9a1ba7a)
284
+ + Documentation: revamp git-cherry(1)
285
286
--------------------------------------------------
287
[Stalled]
288
257
-* fc/transport-helper-fixes (2013-11-13) 12 commits
258
- - remote-bzr: support the new 'force' option
259
- - transport-helper: add support to delete branches
260
- - fast-export: add support to delete refs
261
- - fast-import: add support to delete refs
262
- - transport-helper: add support for old:new refspec
263
- - fast-export: add new --refspec option
264
- - fast-export: improve argument parsing
265
- - test-hg.sh: tests are now expected to pass
266
- - transport-helper: check for 'forced update' message
267
- - transport-helper: add 'force' to 'export' helpers
268
- - transport-helper: don't update refs in dry-run
269
- - transport-helper: mismerge fix
289
+* jc/create-directories-microopt (2013-11-11) 1 commit
290
+ - checkout: most of the time we have good leading directories
291
271
- Updates transport-helper, fast-import and fast-export to allow the
272
- ref mapping and ref deletion in a way similar to the natively
273
- supported transports.
292
+ Of unknown value until tested on non-Linux platforms (especially
293
+ Windows).
294
275
- The option name "--refspec" needs to be rethought. It does not mean
276
- what refspec usually means, even though it shares the same syntax
277
- with refspec; calling it --refspec only because it shares the same
278
- syntax is like calling it --asciistring and does not make sense.
295
+ Will hold.
296
297
298
* nv/commit-gpgsign-config (2013-11-06) 1 commit
@@ -335,13 +352,15 @@ of the repositories listed at
352
- pack-objects: factor out name_hash
353
- pack-objects: refactor the packing list
354
- revindex: export new APIs
338
- - sha1write: make buffer const-correct
355
+ + sha1write: make buffer const-correct
356
(this branch is tangled with jk/name-pack-after-byte-representation.)
357
358
Borrows the bitmap index into packfiles from JGit to speed up
359
enumeration of objects involved in a commit range without having to
360
fully traverse the history.
361
362
+ A reroll forthcoming?
363
+
364
365
* mf/graph-show-root (2013-10-25) 1 commit
366
. graph.c: mark root commit differently
@@ -429,78 +448,103 @@ of the repositories listed at
448
--------------------------------------------------
449
[Cooking]
450
432
-* jl/commit-v-strip-marker (2013-12-05) 1 commit
433
- - commit -v: strip diffs and submodule shortlogs from the commit message
451
+* fc/transport-helper-fixes (2013-12-09) 6 commits
452
+ - remote-bzr: support the new 'force' option
453
+ - test-hg.sh: tests are now expected to pass
454
+ - transport-helper: check for 'forced update' message
455
+ - transport-helper: add 'force' to 'export' helpers
456
+ - transport-helper: don't update refs in dry-run
457
+ - transport-helper: mismerge fix
458
459
+ Updates transport-helper, fast-import and fast-export to allow the
460
+ ref mapping and ref deletion in a way similar to the natively
461
+ supported transports.
462
436
-* cl/p4-use-diff-tree (2013-11-22) 1 commit
437
- (merged to 'next' on 2013-12-06 at fc3c89e)
438
- + git p4: Use git diff-tree instead of format-patch
463
+ Will merge to 'next'.
464
440
- Originally merged to 'next' on 2013-11-27
465
442
- Will merge to 'master'.
466
+* jn/git-gui-chmod+x (2013-11-25) 1 commit
467
+ - git-gui: chmod +x po2msg, windows/git-gui.sh
468
469
+ Parked here until I get the same change back from the upstream
470
+ git-gui tree.
471
445
-* jn/scripts-updates (2013-11-26) 7 commits
446
- (merged to 'next' on 2013-12-06 at 60a7026)
447
- + remove #!interpreter line from shell libraries
448
- + test: replace shebangs with descriptions in shell libraries
449
- + test: make FILEMODE a lazy prereq
450
- + contrib: remove git-p4import
451
- + mark contributed hooks executable
452
- + mark perl test scripts executable
453
- + mark Windows build scripts executable
472
455
- Will merge to 'master'.
473
+* jn/gitk-chmod+x (2013-11-25) 1 commit
474
+ - gitk: chmod +x po2msg
475
476
+ Parked here until I get the same change back from the upstream gitk
477
+ tree.
478
458
-* tr/commit-slab-cleanup (2013-12-02) 3 commits
459
- (merged to 'next' on 2013-12-06 at faee247)
460
- + commit-slab: sizeof() the right type in xrealloc
461
- + commit-slab: declare functions "static inline"
462
- + commit-slab: document clear_$slabname()
479
464
- Originally merged to 'next' on 2013-12-02
480
+* jk/name-pack-after-byte-representation (2013-12-05) 2 commits
481
+ (merged to 'next' on 2013-12-09 at 247b2d0)
482
+ + pack-objects: name pack files after trailer hash
483
+ + sha1write: make buffer const-correct
484
+ (this branch is tangled with jk/pack-bitmap.)
485
+
486
+ Two packfiles that contain the same set of objects have
487
+ traditionally been named identically, but that made repacking a
488
+ repository that is already fully packed without any cruft with a
489
+ different packing parameter cumbersome. Update the convention to
490
+ name the packfile after the bytestream representation of the data,
491
+ not after the set of objects in it.
492
493
Will merge to 'master'.
494
495
469
-* tr/doc-git-cherry (2013-11-27) 1 commit
470
- (merged to 'next' on 2013-12-06 at 9a1ba7a)
471
- + Documentation: revamp git-cherry(1)
496
+* nd/negative-pathspec (2013-12-06) 3 commits
497
+ (merged to 'next' on 2013-12-12 at 9f340c8)
498
+ + pathspec.c: support adding prefix magic to a pathspec with mnemonic magic
499
+ + Support pathspec magic :(exclude) and its short form :!
500
+ + glossary-content.txt: rephrase magic signature part
501
473
- Originally merged to 'next' on 2013-11-27
502
+ Introduce "negative pathspec" magic, to allow "git log . ':!dir'" to
503
+ tell us "I am interested in everything but 'dir' directory".
504
475
- Will merge to 'master'.
505
506
+* nd/transport-positive-depth-only (2013-12-06) 1 commit
507
+ (merged to 'next' on 2013-12-12 at f953cb8)
508
+ + clone,fetch: catch non positive --depth option value
509
478
-* rs/doc-submitting-patches (2013-11-27) 1 commit
479
- (merged to 'next' on 2013-12-06 at 0628818)
480
- + SubmittingPatches: document how to handle multiple patches
510
+ "git fetch --depth=0" was a no-op, and was silently
511
+ ignored. Diagnose it as an error.
512
482
- Originally merged to 'next' on 2013-11-27
513
484
- Will merge to 'master'.
514
+* zk/difftool-counts (2013-12-06) 1 commit
515
+ (merged to 'next' on 2013-12-12 at ba35694)
516
+ + difftool: display the number of files in the diff queue in the prompt
517
+
518
+ Show the total number of paths and the number of paths shown so far
519
+ when "git difftool" prompts to launch an external diff tool, which
520
+ would give users some sense of progress.
521
+
522
+
523
+* jl/commit-v-strip-marker (2013-12-05) 1 commit
524
+ (merged to 'next' on 2013-12-09 at 2b85e9e)
525
+ + commit -v: strip diffs and submodule shortlogs from the commit message
526
+
527
+ "git commit -v" appends the patch to the log message before
528
+ editing, and then removed the patch when the editor returned
529
+ control. However, the patch was not stripped correctly when the
530
+ first modified path was a submodule.
531
532
533
* cc/starts-n-ends-with (2013-12-05) 4 commits
488
- - replace {pre,suf}fixcmp() with {starts,ends}_with()
489
- - strbuf: introduce starts_with() and ends_with()
490
- - builtin/remote: remove postfixcmp() and use suffixcmp() instead
491
- - environment: normalize use of prefixcmp() by removing " != 0"
492
- (this branch is used by cc/starts-n-ends-with-endgame; uses jk/remove-deprecated.)
534
+ (merged to 'next' on 2013-12-12 at 76ee567)
535
+ + replace {pre,suf}fixcmp() with {starts,ends}_with()
536
+ + strbuf: introduce starts_with() and ends_with()
537
+ + builtin/remote: remove postfixcmp() and use suffixcmp() instead
538
+ + environment: normalize use of prefixcmp() by removing " != 0"
539
+ (this branch is used by cc/starts-n-ends-with-endgame.)
540
541
Remove a few duplicate implementations of prefix/suffix comparison
542
functions, and rename them to starts_with and ends_with.
543
497
- To avoid unnecessary merge conflicts, this is queued on top of
498
- jk/remove-deprecated topic.
499
-
544
545
* cc/starts-n-ends-with-endgame (2013-12-05) 1 commit
546
- strbuf: remove prefixcmp() and suffixcmp()
503
- (this branch uses cc/starts-n-ends-with and jk/remove-deprecated.)
547
+ (this branch uses cc/starts-n-ends-with.)
548
549
Endgame for the above topic, that needs to be evil-merged with
550
other topics that introduce new uses of prefix/suffix-cmp
@@ -508,9 +552,10 @@ of the repositories listed at
552
553
554
* jc/push-refmap (2013-12-04) 3 commits
511
- - push: also use "upstream" mapping when pushing a single ref
512
- - push: use remote.$name.push as a refmap
513
- - builtin/push.c: use strbuf instead of manual allocation
555
+ (merged to 'next' on 2013-12-12 at 71e358f)
556
+ + push: also use "upstream" mapping when pushing a single ref
557
+ + push: use remote.$name.push as a refmap
558
+ + builtin/push.c: use strbuf instead of manual allocation
559
560
Make "git push origin master" update the same ref that would be
561
updated by our 'master' when "git push origin" (no refspecs) is run
@@ -520,7 +565,8 @@ of the repositories listed at
565
566
567
* jk/t5000-gzip-simplify (2013-12-04) 1 commit
523
- - t5000: simplify gzip prerequisite checks
568
+ (merged to 'next' on 2013-12-09 at e9010f1)
569
+ + t5000: simplify gzip prerequisite checks
570
571
Test fix.
572
@@ -531,96 +577,61 @@ of the repositories listed at
577
Style fix.
578
579
534
-* kn/gitweb-extra-branch-refs (2013-12-04) 4 commits
535
- - gitweb: Denote non-heads, non-remotes branches
536
- - gitweb: Add a feature for adding more branch refs
537
- - gitweb: Return plain booleans in validation methods
538
- - gitweb: Move check-ref-format code into separate function
580
+* kn/gitweb-extra-branch-refs (2013-12-12) 4 commits
581
+ (merged to 'next' on 2013-12-12 at ae75b02)
582
+ + gitweb: Denote non-heads, non-remotes branches
583
+ + gitweb: Add a feature for adding more branch refs
584
+ + gitweb: Return 1 on validation success instead of passed input
585
+ + gitweb: Move check-ref-format code into separate function
586
587
Allow gitweb to be configured to show refs out of refs/heads/ as if
588
they were branches.
589
590
591
* mm/mv-file-to-no-such-dir-with-slash (2013-12-04) 1 commit
545
- - mv: let 'git mv file no-such-dir/' error out
592
+ (merged to 'next' on 2013-12-09 at f33bc0b)
593
+ + mv: let 'git mv file no-such-dir/' error out
594
595
596
* nd/gettext-vsnprintf (2013-12-04) 1 commit
549
- - gettext.c: detect the vsnprintf bug at runtime
597
+ (merged to 'next' on 2013-12-09 at e99106e)
598
+ + gettext.c: detect the vsnprintf bug at runtime
599
600
601
* tr/send-email-ssl (2013-12-04) 3 commits
553
- - send-email: set SSL options through IO::Socket::SSL::set_client_defaults
554
- - send-email: --smtp-ssl-cert-path takes an argument
555
- - send-email: pass Debug to Net::SMTP::SSL::new
602
+ (merged to 'next' on 2013-12-09 at facb859)
603
+ + send-email: set SSL options through IO::Socket::SSL::set_client_defaults
604
+ + send-email: --smtp-ssl-cert-path takes an argument
605
+ + send-email: pass Debug to Net::SMTP::SSL::new
606
607
+ SSL-related options were not passed correctly to underlying socket
608
+ layer in "git send-email".
609
558
-* tb/clone-ssh-with-colon-for-port (2013-12-04) 10 commits
559
- - git_connect(): use common return point
560
- - connect.c: refactor url parsing
561
- - git_connect(): refactor the port handling for ssh
562
- - git fetch: support host:/~repo
563
- - t5500: add test cases for diag-url
564
- - git fetch-pack: add --diag-url
565
- - git_connect: factor out discovery of the protocol and its parts
566
- - git_connect: remove artificial limit of a remote command
567
- - t5601: add tests for ssh
568
- - t5601: remove clear_ssh, refactor setup_ssh_wrapper
610
611
+* tb/clone-ssh-with-colon-for-port (2013-12-09) 10 commits
612
+ (merged to 'next' on 2013-12-12 at ae4ae39)
613
+ + git_connect(): use common return point
614
+ + connect.c: refactor url parsing
615
+ + git_connect(): refactor the port handling for ssh
616
+ + git fetch: support host:/~repo
617
+ + t5500: add test cases for diag-url
618
+ + git fetch-pack: add --diag-url
619
+ + git_connect: factor out discovery of the protocol and its parts
620
+ + git_connect: remove artificial limit of a remote command
621
+ + t5601: add tests for ssh
622
+ + t5601: remove clear_ssh, refactor setup_ssh_wrapper
623
571
-* cn/thin-push-capability (2013-11-25) 1 commit
572
- (merged to 'next' on 2013-12-06 at a7ae524)
573
- + send-pack: don't send a thin pack to a server which doesn't support it
624
+ Be more careful when parsing remote repository URL given in the
625
+ scp-style host:path notation.
626
575
- Allow receive-pack to insist on receiving a fat pack from "git
576
- push" clients.
577
-
578
- Will merge to 'master'.
579
-
580
-
581
-* jk/remove-deprecated (2013-12-05) 6 commits
582
- (merged to 'next' on 2013-12-06 at c0c91a2)
583
- + Sync with 1.8.5
584
- + stop installing git-tar-tree link
585
- + peek-remote: remove deprecated alias of ls-remote
586
- + lost-found: remove deprecated command
587
- + tar-tree: remove deprecated command
588
- + repo-config: remove deprecated alias for "git config"
589
- (this branch is used by cc/starts-n-ends-with and cc/starts-n-ends-with-endgame.)
627
591
- Originally merged to 'next' on 2013-12-03
628
+* kb/doc-exclude-directory-semantics (2013-12-09) 1 commit
629
+ (merged to 'next' on 2013-12-09 at e54b2ec)
630
+ + gitignore.txt: clarify recursive nature of excluded directories
631
632
Will merge to 'master'.
633
634
596
-* tr/config-multivalue-lift-max (2013-12-06) 1 commit
597
- (merged to 'next' on 2013-12-06 at 92afee2)
598
- + config: arbitrary number of matches for --unset and --replace-all
599
-
600
- Originally merged to 'next' on 2013-11-20
601
-
602
- Will merge to 'master'.
603
-
604
-
605
-* kb/doc-exclude-directory-semantics (2013-11-07) 1 commit
606
- - gitignore.txt: clarify recursive nature of excluded directories
607
-
608
- Originally merged to 'next' on 2013-11-13
609
-
610
- Kicked back to 'pu' to replace with a newer reroll ($gmane/237814
611
- looked OK but there seems to have some loose ends in the
612
- discussion).
613
-
614
-
615
-* jc/create-directories-microopt (2013-11-11) 1 commit
616
- - checkout: most of the time we have good leading directories
617
-
618
- Of unknown value until tested on non-Linux platforms (especially
619
- Windows).
620
-
621
- Will hold.
622
-
623
-
635
* gj/push-more-verbose-advice (2013-11-13) 1 commit
636
(merged to 'next' on 2013-12-06 at 574b18a)
637
+ push: switch default from "matching" to "simple"
@@ -642,52 +653,8 @@ of the repositories listed at
653
Will hold until using script appears.
654
655
645
-* mh/fetch-tags-in-addition-to-normal-refs (2013-10-30) 23 commits
646
- (merged to 'next' on 2013-12-06 at 3b9c44a)
647
- + fetch: improve the error messages emitted for conflicting refspecs
648
- + handle_duplicate(): mark error message for translation
649
- + ref_remote_duplicates(): extract a function handle_duplicate()
650
- + ref_remove_duplicates(): simplify loop logic
651
- + t5536: new test of refspec conflicts when fetching
652
- + ref_remove_duplicates(): avoid redundant bisection
653
- + git-fetch.txt: improve description of tag auto-following
654
- + fetch-options.txt: simplify ifdef/ifndef/endif usage
655
- + fetch, remote: properly convey --no-prune options to subprocesses
656
- + builtin/remote.c:update(): use struct argv_array
657
- + builtin/remote.c: reorder function definitions
658
- + query_refspecs(): move some constants out of the loop
659
- + fetch --prune: prune only based on explicit refspecs
660
- + fetch --tags: fetch tags *in addition to* other stuff
661
- + fetch: only opportunistically update references based on command line
662
- + get_expanded_map(): avoid memory leak
663
- + get_expanded_map(): add docstring
664
- + builtin/fetch.c: reorder function definitions
665
- + get_ref_map(): rename local variables
666
- + api-remote.txt: correct section "struct refspec"
667
- + t5510: check that "git fetch --prune --tags" does not prune branches
668
- + t5510: prepare test refs more straightforwardly
669
- + t5510: use the correct tag name in test
670
-
671
- Originally merged to 'next' on 2013-11-06
672
-
673
- The "--tags" option to "git fetch" used to be literally a synonym to
674
- a "refs/tags/*:refs/tags/*" refspec, which meant that (1) as an
675
- explicit refspec given from the command line, it silenced the lazy
676
- "git fetch" default that is configured, and (2) also as an explicit
677
- refspec given from the command line, it interacted with "--prune"
678
- to remove any tag that the remote we are fetching from does not
679
- have.
680
-
681
- This demotes it to an option; with it, we fetch all tags in
682
- addition to what would be fetched without the option, and it does
683
- not interact with the decision "--prune" makes to see what
684
- remote-tracking refs the local has are missing the remote
685
- counterpart.
686
-
687
- Will merge to 'master'.
688
-
689
-
690
-* kb/fast-hashmap (2013-11-18) 14 commits
656
+* kb/fast-hashmap (2013-12-09) 15 commits
657
+ - hashmap.h: make sure map entries are tightly packed
658
(merged to 'next' on 2013-12-06 at f90be3d)
659
+ read-cache.c: fix memory leaks caused by removed cache entries
660
+ builtin/update-index.c: cleanup update_one
@@ -707,7 +674,7 @@ of the repositories listed at
674
Improvements to our hash table to get it to meet the needs of the
675
msysgit fscache project, with some nice performance improvements.
676
710
- Will cook in 'next'.
677
+ The tip one does not seem to have reached concensus (yet).
678
679
680
* jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit