1 To: git@vger.kernel.org
3 Subject: What's cooking in git.git (Sep 2015, #04; Thu, 17)
4 X-master-at: 0e5767991b19d8f91b437a679196a1dfd678c5a0
5 X-next-at: 3dd15c02a81a280c83c8d5e32c6cb71a64177ca6
7 What's cooking in git.git (Sep 2015, #04; Thu, 17)
8 --------------------------------------------------
10 Here are the topics that have been cooking. Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
14 I'll be offline til Monday 21st, when 2.6-rc3 is planned to happen.
16 You can find the changes described here in the integration branches
17 of the repositories listed at
19 http://git-blame.blogspot.com/p/git-public-repositories.html
21 --------------------------------------------------
22 [Graduated to "master"]
24 * as/config-doc-markup-fix (2015-09-12) 1 commit
25 (merged to 'next' on 2015-09-14 at faa4134)
26 + Documentation/config: fix formatting for branch.*.rebase and pull.rebase
29 * et/win32-poll-timeout (2015-09-14) 1 commit
30 (merged to 'next' on 2015-09-14 at 308dff4)
31 + poll: honor the timeout on Win32
34 * po/doc-branch-desc (2015-09-14) 1 commit
35 (merged to 'next' on 2015-09-14 at 4934a96)
36 + doc: show usage of branch description
38 The branch descriptions that are set with "git branch --edit-description"
39 option were used in many places but they weren't clearly documented.
41 --------------------------------------------------
44 * jk/blame-first-parent (2015-09-16) 1 commit
45 - blame: handle --first-parent
48 * jk/transfer-limit-protocol (2015-09-16) 3 commits
50 - submodule: allow only certain protocols for submodule fetches
51 - transport: add a protocol-whitelist environment variable
54 * rj/mailmap-ramsay (2015-09-16) 1 commit
55 - mailmap: update my entry with new email address
57 --------------------------------------------------
60 * sb/remove-get-pathspec (2015-08-03) 1 commit
61 - builtin/mv: remove get_pathspec()
67 * nd/list-files (2015-02-09) 21 commits
68 - t3080: tests for git-list-files
69 - list-files: -M aka diff-cached
70 - list-files -F: show submodules with the new indicator '&'
71 - list-files: add -F/--classify
72 - list-files: show directories as well as files
73 - list-files: do not show duplicate cached entries
74 - list-files: sort output and remove duplicates
75 - list-files: add -t back
76 - list-files: add -1 short for --no-column
77 - list-files: add -R/--recursive short for --max-depth=-1
78 - list-files: -u does not imply showing stages
79 - list-files: make alias 'ls' default to 'list-files'
80 - list-files: a user friendly version of ls-files and more
81 - ls-files: support --max-depth
82 - ls-files: add --column
83 - ls-files: add --color to highlight file names
84 - ls-files: buffer full item in strbuf before printing
85 - ls_colors.c: highlight submodules like directories
86 - ls_colors.c: add a function to color a file name
87 - ls_colors.c: parse color.ls.* from config file
88 - ls_colors.c: add $LS_COLORS parsing code
90 A new "git list-files" Porcelain command, "ls-files" with bells and
93 Reroll to base on wt-status work ($gmane/265142) has seen some
96 Waiting for a further polished reroll ($gmane/265534).
99 * mh/numparse (2015-03-19) 14 commits
100 . diff_opt_parse(): use convert_i() when handling --abbrev=<num>
101 . diff_opt_parse(): use convert_i() when handling "-l<num>"
102 . opt_arg(): simplify pointer handling
103 . opt_arg(): report errors parsing option values
104 . opt_arg(): use convert_i() in implementation
105 . opt_arg(): val is always non-NULL
106 . builtin_diff(): detect errors when parsing --unified argument
107 . handle_revision_opt(): use convert_ui() when handling "--abbrev="
108 . strtoul_ui(), strtol_i(): remove functions
109 . handle_revision_opt(): use convert_i() when handling "-<digit>"
110 . handle_revision_opt(): use skip_prefix() in many places
111 . write_subdirectory(): use convert_ui() for parsing mode
112 . cacheinfo_callback(): use convert_ui() when handling "--cacheinfo"
113 . numparse: new module for parsing integral numbers
115 Many codepaths use unchecked use of strtol() and friends (or even
116 worse, atoi()). Introduce a set of wrappers that try to be more
119 Waiting for a reroll.
123 * kk/log-merges-config (2015-04-21) 5 commits
124 - bash-completion: add support for git-log --merges= and log.merges
125 - t4202-log: add tests for --merges=
126 - Documentation: add git-log --merges= option and log.merges config. var
127 - log: honor log.merges= option
128 - revision: add --merges={show|only|hide} option
130 "git log" (but not other commands in the "log" family) learned to
131 pay attention to the log.merges configuration variable that can be
132 set to "show" (the normal behaviour), "only" (hide non-merge
133 commits), or "hide" (hide merge commits). --merges=(show|only|hide)
134 can be used to override the setting from the command line.
136 The documentation may need to be updated once more ($gmane/267250).
137 Waiting for a reroll.
140 * mg/httpd-tests-update-for-apache-2.4 (2015-04-08) 2 commits
141 - t/lib-git-svn: check same httpd module dirs as lib-httpd
142 - t/lib-httpd: load mod_unixd
144 This is the first two commits in a three-patch series $gmane/266962
146 Waiting for a reroll.
147 with updated log message ($gmane/268061).
150 * bw/portability-solaris (2015-07-20) 3 commits
151 - tests: fix sed usage in tests to work around broken xpg4/sed on Solaris
152 - tests: fix sed usage in tests to work around broken xpg4/sed on Solaris
153 - tests: modify tr expressions so that xpg4/tr handles it on Solaris
155 Needs another reroll?
159 * jc/clone-bundle (2015-04-30) 1 commit
160 - repack: optionally create a clone.bundle
162 Waiting for further work.
166 * mg/index-read-error-messages (2015-06-01) 2 commits
167 - messages: uniform error messages for index write
168 - show-index: uniform error messages for index read
171 Waiting for a reroll.
174 * wp/sha1-name-negative-match (2015-06-08) 2 commits
175 - sha1_name.c: introduce '^{/!-<negative pattern>}' notation
176 - test for '!' handling in rev-parse's named commits
178 Introduce "branch^{/!-<pattern>}" notation to name a commit
179 reachable from branch that does not match the given pattern.
181 Waiting for a reroll.
184 * mk/utf8-no-iconv-warn (2015-06-08) 1 commit
185 - utf8.c: print warning about disabled iconv
187 Warn when a reencoding is requested in a build without iconv
188 support, as the end user is likely to get an unexpected result. I
189 think the same level of safety should be added to a build with
190 iconv support when the specified encoding is not available, but the
191 patch does not go there.
193 Waiting for a reroll.
196 * ak/format-patch-odir-config (2015-06-19) 1 commit
197 - format-patch: introduce format.outputDirectory configuration
199 Reroll exists but didn't pick it up as it seemed to be still
200 collecting review comments.
202 Waiting for a reroll.
206 * mh/notes-allow-reading-treeish (2015-07-13) 1 commit
207 - notes: allow treeish expressions as notes ref
209 Some "git notes" operations, e.g. "git log --notes=<note>", should
210 be able to read notes from any tree-ish that is shaped like a notes
211 tree, but the notes infrastructure required that the argument must
212 be a ref under refs/notes/. Loosen it to require a valid ref only
213 when the operation would update the notes (in which case we must
214 have a place to store the updated notes tree, iow, a ref).
216 Needs update to docs.
220 * jc/diff-b-m (2015-02-23) 5 commits
223 - diffcore-rename: allow easier debugging
224 - diffcore-rename.c: add locate_rename_src()
225 - diffcore-break: allow debugging
227 "git diff -B -M" produced incorrect patch when the postimage of a
228 completely rewritten file is similar to the preimage of a removed
229 file; such a resulting file must not be expressed as a rename from
232 The fix in this patch is broken, unfortunately.
235 * pw/remote-set-url-fetch (2014-11-26) 1 commit
236 . remote: add --fetch and --both options to set-url
241 * tr/remerge-diff (2014-11-10) 9 commits
242 . t4213: avoid "|" in sed regexp
243 . log --remerge-diff: show what the conflict resolution changed
244 . name-hash: allow dir hashing even when !ignore_case
245 . merge-recursive: allow storing conflict hunks in index
246 . merge_diff_mode: fold all merge diff variants into an enum
247 . combine-diff: do not pass revs->dense_combined_merges redundantly
248 . merge-recursive: -Xindex-only to leave worktree unchanged
249 . merge-recursive: internal flag to avoid touching the worktree
250 . merge-recursive: remove dead conditional in update_stages()
252 "log -p" output learns a new way to let users inspect a merge
253 commit by showing the differences between the automerged result
254 with conflicts the person who recorded the merge would have seen
255 and the final conflict resolution that was recorded in the merge.
257 Waiting for a reroll.
261 * tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
262 - perf-lib: add test_perf_cleanup target
263 - perf-lib: split starting the test from the execution
265 Add test_perf_cleanup shell function to the perf suite, that allows
266 the script writers to define a test with a clean-up action.
271 * jc/show-branch (2014-03-24) 5 commits
272 - show-branch: use commit slab to represent bitflags of arbitrary width
273 - show-branch.c: remove "all_mask"
274 - show-branch.c: abstract out "flags" operation
275 - show-branch.c: lift all_mask/all_revs to a global static
276 - show-branch.c: update comment style
278 Waiting for the final step to lift the hard-limit.
280 --------------------------------------------------
283 * ld/p4-detached-head (2015-09-09) 2 commits
284 - git-p4: work with a detached head
285 - git-p4: add failing test for submit from detached head
291 * jk/graph-format-padding (2015-09-14) 1 commit
292 - pretty: pass graph width to pretty formatting for use in '%>|(N)'
294 Redefine the way '%>|(N)' padding and the "--graph" option
295 interacts. It has been that the available columns to display the
296 log message was measured from the edge of the area the graph ended,
297 but with this it becomes the beginning of the entire output.
299 I have a suspicion that 50% of the users would appreciate this
300 change, and the remainder see this break their expectation. If
301 that is the case, we might need to introduce a similar but
302 different alignment operator so that this new behaviour is
303 available to those who want to use it, without negatively affecting
307 * jk/make-findstring-makeflags-fix (2015-09-10) 1 commit
308 - Makefile: fix MAKEFLAGS tests with multiple flags
310 Customization to change the behaviour with "make -w" and "make -s"
311 in our Makefile was broken when they were used together.
313 Will merge to 'next'.
316 * jk/rebase-no-autostash (2015-09-10) 2 commits
317 - Documentation/git-rebase: fix --no-autostash formatting
318 - rebase: support --no-autostash
320 There was no way to defeat a configured rebase.autostash variable
321 from the command line, as "git rebase --no-autostash" was missing.
323 Will merge to 'next'.
326 * jw/make-arflags-customizable (2015-09-10) 1 commit
327 - Makefile: allow $(ARFLAGS) specified from the command line
329 The Makefile always runs the library archiver with hardcoded "crs"
330 options, which was inconvenient for exotic platforms on which
331 people wants to use programs with totally different set of command
334 Will merge to 'next'.
337 * nd/ignore-then-not-ignore (2015-09-14) 2 commits
338 - dir.c: don't exclude whole dir prematurely if neg pattern may match
339 - dir.c: make last_exclude_matching_from_list() run til the end
341 Allow a later "!/abc/def" to override an earlier "/abc" that
342 appears in the same .gitignore file to make it easier to express
343 "everything in /abc directory is ignored, except for ...".
346 * sb/submodule-parallel-fetch (2015-09-14) 2 commits
347 - fetch: fetch submodules in parallel
348 - submodule.c: write "Fetching submodule <foo>" to stderr
349 (this branch uses sb/submodule-helper.)
352 * mk/submodule-gitdir-path (2015-09-14) 2 commits
353 - path: implement common_dir handling in git_pathdup_submodule()
354 - submodule refactor: use strbuf_git_path_submodule() in add_submodule_odb()
356 The submodule code has been taught to work better with separate
357 work trees created via "git worktree add".
360 * jk/connect-clear-env (2015-09-08) 2 commits
361 (merged to 'next' on 2015-09-08 at 86b64f7)
362 + git_connect: clarify conn->use_shell flag
363 (merged to 'next' on 2015-09-06 at 9ddbed8)
364 + git_connect: clear GIT_* environment for ssh
366 The ssh transport, just like any other transport over the network,
367 did not clear GIT_* environment variables, but it is possible to
368 use SendEnv and AcceptEnv to leak them to the remote invocation of
369 Git, which is not a good idea at all. Explicitly clear them just
370 like we do for the local transport.
372 Will merge to 'master'.
375 * ti/glibc-stdio-mutex-from-signal-handler (2015-09-04) 1 commit
376 (merged to 'next' on 2015-09-08 at c8047ba)
377 + pager: don't use unsafe functions in signal handlers
379 Allocation related functions and stdio are unsafe things to call
380 inside a signal handler, and indeed killing the pager can cause
381 glibc to deadlock waiting on allocation mutex as our signal handler
382 tries to free() some data structures in wait_for_pager(). Reduce
385 I seem to recall Peff had other ideas? Let's revisit this in the
389 * as/subtree-with-spaces (2015-09-08) 2 commits
390 (merged to 'next' on 2015-09-09 at f3d763d)
391 + contrib/subtree: respect spaces in a repository path
392 + t7900-subtree: test the "space in a subdirectory name" case
394 Update "git subtree" (in contrib/) so that it can take whitespaces
395 in the pathnames, not only in the in-tree pathname but the name of
396 the directory that the repository is in.
398 Will merge to 'master'.
401 * gb/filter-branch-progress (2015-09-08) 1 commit
402 - filter-branch: add passed/remaining seconds on progress
404 Give progress meter to "git filter-branch".
409 * jk/interpret-trailers-outside-a-repository (2015-09-08) 1 commit
410 (merged to 'next' on 2015-09-09 at a75fce3)
411 + interpret-trailers: allow running outside a repository
413 Allow "git interpret-trailers" to run outside of a Git repository.
415 Will merge to 'master'.
418 * jk/test-lint-forbid-when-finished-in-subshell (2015-09-08) 5 commits
419 (merged to 'next' on 2015-09-09 at 74ede61)
420 + test-lib-functions: detect test_when_finished in subshell
421 + t7800: don't use test_config in a subshell
422 + test-lib-functions: support "test_config -C <dir> ..."
423 + t5801: don't use test_when_finished in a subshell
424 + t7610: don't use test_config in a subshell
426 Because "test_when_finished" in our test framework queues the
427 clean-up tasks to be done in a shell variable, it should not be
428 used inside a subshell. Add a mechanism to allow 'bash' to catch
429 such uses, and fix the ones that were found.
431 Will merge to 'master'.
434 * ls/p4-lfs (2015-09-09) 5 commits
435 - git-p4: add Git LFS backend for large file system
436 - git-p4: add support for large file systems
437 - git-p4: return an empty list if a list config has no values
438 - git-p4: add gitConfigInt reader
439 - git-p4: add optional type specifier to gitConfig reader
441 Teach "git p4" to send large blobs outside the repository by
445 * nd/clone-linked-checkout (2015-09-14) 5 commits
446 - clone: better error when --reference is a linked checkout
447 - clone: allow --local from a linked checkout
448 - enter_repo: allow .git files in strict mode
449 - enter_repo: avoid duplicating logic, use is_git_directory() instead
450 - path.c: delete an extra space
452 It was not possible to use a repository-lookalike created by "git
453 worktree add" as a local source of "git clone".
459 * jh/quiltimport-explicit-series-file (2015-09-01) 1 commit
460 (merged to 'next' on 2015-09-02 at 1129ca4)
461 + git-quiltimport: add commandline option --series <file>
463 "quiltimport" allows to specify the series file by honoring the
464 $QUILT_SERIES environment and also --series command line option.
466 Will merge to 'master'.
469 * jk/async-pkt-line (2015-09-01) 2 commits
470 (merged to 'next' on 2015-09-02 at e185717)
471 + pkt-line: show packets in async processes as "sideband"
472 + run-command: provide in_async query function
474 The debugging infrastructure for pkt-line based communication has
475 been improved to mark the side-band communicatio specifically.
477 Will merge to 'master'.
480 * jk/date-local (2015-09-03) 11 commits
481 (merged to 'next' on 2015-09-08 at 66781d9)
482 + t6300: add tests for "-local" date formats
483 + t6300: make UTC and local dates different
484 + date: make "local" orthogonal to date format
485 + date: check for "local" before anything else
486 + t6300: add test for "raw" date format
487 + t6300: introduce test_date() helper
488 + fast-import: switch crash-report date to iso8601
489 + Documentation/rev-list: don't list date formats
490 + Documentation/git-for-each-ref: don't list date formats
491 + Documentation/config: don't list date formats
492 + Documentation/blame-options: don't list date formats
494 "git log --date=local" used to only allow to show the normal
495 (default) format in the local timezone. The command learned to take
496 'local' as an instruction to use the local timezone with other
497 formats, e.g. "git show --date=rfc-local".
499 Will merge to 'master'.
502 * nk/stash-show-config (2015-08-31) 1 commit
503 (merged to 'next' on 2015-09-08 at 90dd06f)
504 + stash: allow "stash show" diff output configurable
506 Users who are too busy to type three extra keystrokes to ask for
507 "git stash show -p" can now set stash.showPatch configuration
508 varible to true to always see the actual patch, not just the list
509 of paths affected with feel for the extent of damage via diffstat.
511 Will merge to 'master'.
514 * ls/p4-path-encoding (2015-09-16) 2 commits
515 (merged to 'next' on 2015-09-17 at 7f8b9e0)
516 + git-p4: improve path encoding verbose output
517 (merged to 'next' on 2015-09-08 at 56514f9)
518 + git-p4: add config git-p4.pathEncoding
520 "git p4" learned to reencode the pathname it uses to communicate
521 with the p4 depot with a new option.
523 Will merge to 'master'.
526 * ad/bisect-terms (2015-08-03) 4 commits
527 (merged to 'next' on 2015-09-01 at ede6e64)
528 + bisect: allow setting any user-specified in 'git bisect start'
529 + bisect: add 'git bisect terms' to view the current terms
530 + bisect: add the terms old/new
531 + bisect: sanity check on terms
533 The use of 'good/bad' in "git bisect" made it confusing to use when
534 hunting for a state change that is not a regression (e.g. bugfix).
535 The command learned 'old/new' and then allows the end user to
536 say e.g. "bisect start --term-old=fast --term=new=slow" to find a
537 performance regression.
539 Michael's idea to make 'good/bad' more intelligent does have
540 certain attractiveness ($gname/272867), and makes some of the work
541 on this topic a moot point.
543 Will merge to 'master'.
546 * dt/refs-bisection (2015-09-01) 3 commits
547 (merged to 'next' on 2015-09-08 at 2b66bad)
548 + refs: make refs/bisect/* per-worktree
549 + path: optimize common dir checking
550 + refs: clean up common_list
552 Move the refs used during a "git bisect" session to per-worktree
553 hierarchy refs/worktree/* so that independent bisect sessions can
554 be done in different worktrees.
556 Will merge to 'master'.
559 * ld/p4-import-labels (2015-08-28) 3 commits
560 (merged to 'next' on 2015-09-01 at cf9f1d6)
561 + git-p4: fix P4 label import for unprocessed commits
562 + git-p4: do not terminate creating tag for unknown commit
563 + git-p4: failing test for ignoring invalid p4 labels
565 Will merge to 'master'.
568 * kn/for-each-tag (2015-09-17) 17 commits
569 (merged to 'next' on 2015-09-17 at 1980952)
570 + tag.c: implement '--merged' and '--no-merged' options
571 + tag.c: implement '--format' option
572 + tag.c: use 'ref-filter' APIs
573 + tag.c: use 'ref-filter' data structures
574 + ref-filter: add option to match literal pattern
575 + ref-filter: add support to sort by version
576 + ref-filter: add support for %(contents:lines=X)
577 + ref-filter: add option to filter out tags, branches and remotes
578 + ref-filter: implement an `align` atom
579 + ref-filter: introduce match_atom_name()
580 + ref-filter: introduce handler function for each atom
581 + utf8: add function to align a string into given strbuf
582 + ref-filter: introduce ref_formatting_state and ref_formatting_stack
583 + ref-filter: move `struct atom_value` to ref-filter.c
584 + strtoul_ui: reject negative values
585 + Merge 'jk/git-path' into kn/for-each-tag
586 + Merge 'kn/for-each-tag-branch' into kn/for-each-tag
587 (this branch uses kn/for-each-tag-branch.)
589 The "ref-filter" code was taught about many parts of what "tag -l"
590 does and then "tag -l" is reimplemented in terms of "ref-filter".
592 Will merge to 'master'.
595 * nd/ita-cleanup (2015-09-06) 6 commits
596 - grep: make it clear i-t-a entries are ignored
597 - checkout(-index): do not checkout i-t-a entries
598 - apply: make sure check_preimage() does not leave empty file on error
599 - apply: fix adding new files on i-t-a entries
600 - add and use a convenience macro ce_intent_to_add()
601 - blame: remove obsolete comment
603 Paths that have been told the index about with "add -N" are not yet
604 in the index, but various commands behaved as if they already are.
606 Some commits need better explanation.
608 Waiting for a reroll.
611 * dk/gc-idx-wo-pack (2015-08-17) 3 commits
612 - DONTMERGE: log message, grace-period and tests $gmane/276058
613 - gc: remove stale .idx files without corresponding .pack file
614 - prepare_packed_git(): refactor garbage reporting in pack directory
616 Having a leftover .idx file without correspoinding .pack file in
617 the repository hurts performance; "git gc" learned to prune them.
619 Waiting for a reroll.
622 * bb/remote-get-url (2015-09-17) 1 commit
623 - remote: add get-url subcommand
625 "git remote" learned "get-url" subcommand to show the URL for a
626 given remote name used for fetching and pushing.
628 Will merge to 'next'.
631 * sb/submodule-helper (2015-09-08) 4 commits
632 - submodule: rewrite `module_clone` shell function in C
633 - submodule: rewrite `module_name` shell function in C
634 - submodule: rewrite `module_list` shell function in C
635 - Merge 'hv/submodule-config' to 'sb/submodule-helper'
636 (this branch is used by sb/submodule-parallel-fetch.)
638 The infrastructure to rewrite "git submodule" in C is being built
639 incrementally. Let's polish these early parts well enough and make
640 them graduate to 'next' and 'master', so that the more involved
641 follow-up can start cooking on a solid ground.
643 Looked ready for 'next'. Comments from others?
646 * ad/cygwin-wants-rename (2015-08-07) 1 commit
647 - config.mak.uname: Cygwin needs OBJECT_CREATION_USES_RENAMES
653 * kn/for-each-tag-branch (2015-08-03) 11 commits
654 (merged to 'next' on 2015-08-03 at d9e94b9)
655 + for-each-ref: add '--contains' option
656 + ref-filter: implement '--contains' option
657 + parse-options.h: add macros for '--contains' option
658 + parse-option: rename parse_opt_with_commit()
659 + for-each-ref: add '--merged' and '--no-merged' options
660 + ref-filter: implement '--merged' and '--no-merged' options
661 + ref-filter: add parse_opt_merge_filter()
662 + for-each-ref: add '--points-at' option
663 + ref-filter: implement '--points-at' option
664 + tag: libify parse_opt_points_at()
665 + t6302: for-each-ref tests for ref-filter APIs
666 (this branch is used by kn/for-each-tag.)
668 Originally merged to 'next' on 2015-07-15
670 Some features from "git tag -l" and "git branch -l" have been made
671 available to "git for-each-ref" so that eventually the unified
672 implementation can be shared across all three, in a follow-up
675 Will merge to 'master'.
678 * jc/rerere (2015-07-24) 21 commits
679 (merged to 'next' on 2015-08-26 at 8ae15ef)
680 + rerere: un-nest merge() further
681 + rerere: use "struct rerere_id" instead of "char *" for conflict ID
682 + rerere: call conflict-ids IDs
683 + rerere: further clarify do_rerere_one_path()
684 + rerere: further de-dent do_plain_rerere()
685 + rerere: refactor "replay" part of do_plain_rerere()
686 + rerere: explain the remainder
687 + rerere: explain "rerere forget" codepath
688 + rerere: explain the primary codepath
689 + rerere: explain MERGE_RR management helpers
690 + rerere: fix benign off-by-one non-bug and clarify code
691 + rerere: explain the rerere I/O abstraction
692 + rerere: do not leak mmfile[] for a path with multiple stage #1 entries
693 + rerere: stop looping unnecessarily
694 + rerere: drop want_sp parameter from is_cmarker()
695 + rerere: report autoupdated paths only after actually updating them
696 + rerere: write out each record of MERGE_RR in one go
697 + rerere: lift PATH_MAX limitation
698 + rerere: plug conflict ID leaks
699 + rerere: handle conflicts with multiple stage #1 entries
700 + rerere: fix an off-by-one non-bug
701 (this branch is used by jc/rerere-multi.)
703 Code clean-up and minor fixes.
705 Will merge to 'master'.
708 * jc/rerere-multi (2015-09-14) 7 commits
709 - rerere: do use multiple variants
710 - t4200: rerere a merge with two identical conflicts
711 - rerere: allow multiple variants to exist
712 - rerere: delay the recording of preimage
713 - rerere: handle leftover rr-cache/$ID directory and postimage files
714 - rerere: scan $GIT_DIR/rr-cache/$ID when instantiating a rerere_id
715 - rerere: split conflict ID further
716 (this branch uses jc/rerere.)
718 "git rerere" can encounter two or more files with the same conflict
719 signature that have to be resolved in different ways, but there was
720 no way to record these separate resolutions.
723 * jc/merge-drop-old-syntax (2015-04-29) 1 commit
724 (merged to 'next' on 2015-08-03 at a52c2b2)
725 + merge: drop 'git merge <message> HEAD <commit>' syntax
727 Originally merged to 'next' on 2015-05-28
729 Stop supporting "git merge <message> HEAD <commit>" syntax that
730 has been deprecated since October 2007.
732 Will keep in 'next' during the 2.6 cycle.