Meta/Dothem: no need to retest if only documentation changed
[alt-git.git] / whats-cooking.txt
bloba1e37651bb054ac1a9dc77e24abaf313dec517b9
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 Subject: What's cooking in git.git (Feb 2014, #02; Wed, 5)
4 X-master-at: 89ba81dc7643f5b126b15b15a8dcd3893d05ee47
5 X-next-at: ed4ee9f6d9847e9cfc1ea6faeea20ae612ccbcfb
7 What's cooking in git.git (Feb 2014, #02; Wed, 5)
8 --------------------------------------------------
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'.
14 v1.9.0-rc3 is expected to happen this weekend or early next week.
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 [New Topics]
24 * aj/ada-diff-word-pattern (2014-02-05) 1 commit
25  - userdiff: update Ada patterns
27  Will merge to 'next' and then to 'master'.
30 * jk/makefile (2014-02-05) 16 commits
31  - FIXUP
32  - move LESS/LV pager environment to Makefile
33  - Makefile: teach scripts to include make variables
34  - FIXUP
35  - Makefile: auto-build C strings from make variables
36  - Makefile: drop *_SQ variables
37  - FIXUP
38  - Makefile: add c-quote helper function
39  - Makefile: introduce sq function for shell-quoting
40  - Makefile: always create files via make-var
41  - Makefile: store GIT-* sentinel files in MAKE/
42  - Makefile: prefer printf to echo for GIT-*
43  - Makefile: use tempfile/mv strategy for GIT-*
44  - Makefile: introduce make-var helper function
45  - Makefile: fix git-instaweb dependency on gitweb
46  - Makefile: drop USE_GETTEXT_SCHEME from GIT-CFLAGS
49 * ks/tree-diff-walk (2014-02-05) 4 commits
50  - revision: convert to using diff_tree_sha1()
51  - line-log: convert to using diff_tree_sha1()
52  - tree-diff: convert diff_root_tree_sha1() to just call diff_tree_sha1 with old=NULL
53  - tree-diff: allow diff_tree_sha1 to accept NULL sha1
55  Will merge to 'next'.
58 * nd/reset-intent-to-add (2014-02-05) 1 commit
59  - reset: support "--mixed --intent-to-add" mode
61  Will merge to 'next'.
64 * nd/tag-doc (2014-02-04) 1 commit
65  - git-tag.txt: <commit> for --contains is optional
67  Will merge to 'next' and then to 'master'.
70 * nd/test-rename-reset (2014-02-04) 1 commit
71  - t7101, t7014: rename test files to indicate what that file is for
73  Will merge to 'next'.
76 * tb/repack-fix-renames (2014-02-05) 1 commit
77  - repack.c: rename a few variables
79  Perhaps unneeded, as the longer-term plan is to drop the codeblock
80  this change touches.
82  Will discard.
85 * tr/remerge-diff (2014-02-05) 6 commits
86  - log --remerge-diff: show what the conflict resolution changed
87  - merge-recursive: allow storing conflict hunks in index
88  - Fold all merge diff variants into an enum
89  - combine-diff: do not pass revs->dense_combined_merges redundantly
90  - log: add a merge base inspection option
91  - pretty: refactor add_merge_info() into parts
92  (this branch uses tr/merge-recursive-index-only.)
94  "log -p" output learns a new way to let users inspect a merge
95  commit by showing the differences between the automerged result
96  with conflicts the person who recorded the merge would have seen
97  and the final conflict resolution that was recorded in the merge.
99  RFC.
102 * ow/manpages-typofix (2014-02-05) 1 commit
103  - Documentation: fix typos in man pages
105  Various typofixes, all looked correct.
107  Will merge to 'next' and then to 'master'.
109 --------------------------------------------------
110 [Stalled]
112 * po/everyday-doc (2014-01-27) 1 commit
113  - Make 'git help everyday' work
115  This may make the said command to emit something, but the source is
116  not meant to be formatted into a manual pages to begin with, and
117  also its contents are a bit stale.  It may be a good first step in
118  the right direction, but needs more work to at least get the
119  mark-up right before public consumption.
121  Will hold.
124 * jk/branch-at-publish-rebased (2014-01-17) 5 commits
125  - t1507 (rev-parse-upstream): fix typo in test title
126  - implement @{publish} shorthand
127  - branch_get: provide per-branch pushremote pointers
128  - branch_get: return early on error
129  - sha1_name: refactor upstream_mark
131  Give an easier access to the tracking branches from "other" side in
132  a triangular workflow by introducing B@{publish} that works in a
133  similar way to how B@{upstream} does.
135  Will hold.
138 * rb/merge-prepare-commit-msg-hook (2014-01-10) 4 commits
139  - merge: drop unused arg from abort_commit method signature
140  - merge: make prepare_to_commit responsible for write_merge_state
141  - t7505: ensure cleanup after hook blocks merge
142  - t7505: add missing &&
144  Expose more merge states (e.g. $GIT_DIR/MERGE_MODE) to hooks that
145  run during "git merge".  The log message stresses too much on one
146  hook, prepare-commit-msg, but it would equally apply to other hooks
147  like post-merge, I think.
149  Waiting for a reroll.
152 * jl/submodule-recursive-checkout (2013-12-26) 5 commits
153  - Teach checkout to recursively checkout submodules
154  - submodule: teach unpack_trees() to update submodules
155  - submodule: teach unpack_trees() to repopulate submodules
156  - submodule: teach unpack_trees() to remove submodule contents
157  - submodule: prepare for recursive checkout of submodules
159  Expecting a reroll.
162 * jc/graph-post-root-gap (2013-12-30) 3 commits
163  - WIP: document what we want at the end
164  - graph: remove unused code a bit
165  - graph: stuff the current commit into graph->columns[]
167  This was primarily a RFH ($gmane/239580).
170 * fc/transport-helper-fixes (2013-12-09) 6 commits
171  - remote-bzr: support the new 'force' option
172  - test-hg.sh: tests are now expected to pass
173  - transport-helper: check for 'forced update' message
174  - transport-helper: add 'force' to 'export' helpers
175  - transport-helper: don't update refs in dry-run
176  - transport-helper: mismerge fix
178  Updates transport-helper, fast-import and fast-export to allow the
179  ref mapping and ref deletion in a way similar to the natively
180  supported transports.
182  Reported to break t5541.
183  Will hold.
186 * fc/completion (2013-12-09) 1 commit
187  - completion: fix completion of certain aliases
189  SZEDER Gábor noticed that this breaks "git -c var=val alias" and
190  also suggested a better description of the change.
192  Will hold.
195 * mo/subtree-split-updates (2013-12-10) 3 commits
196  - subtree: add --edit option
197  - subtree: allow --squash and --message with push
198  - subtree: support split --rejoin --squash
200  Comments?
203 * hv/submodule-ignore-fix (2013-12-06) 4 commits
204  - disable complete ignorance of submodules for index <-> HEAD diff
205  - always show committed submodules in summary after commit
206  - teach add -f option for ignored submodules
207  - fix 'git add' to skip submodules configured as ignored
209  Teach "git add" to be consistent with "git status" when changes to
210  submodules are set to be ignored, to avoid surprises after checking
211  with "git status" to see there isn't any change to be further added
212  and then see that "git add ." adds changes to them.
214  I think a reroll is coming, so this may need to be replaced, but I
215  needed some practice with heavy conflict resolution.  It conflicts
216  with two changes to "git add" that have been scheduled for Git 2.0
217  quite badly, and I think I got the resolution right this time.
219  Waiting for a reroll.
222 * kb/fast-hashmap (2014-01-03) 19 commits
223  - hashmap.h: make sure map entries are tightly packed
224   (merged to 'next' on 2014-01-03 at dc85001)
225  + name-hash: retire unused index_name_exists()
226  + hashmap.h: Use 'unsigned int' for hash-codes everywhere
227   (merged to 'next' on 2013-12-16 at bff99b1)
228  + Drop unnecessary #includes from test-hashmap
229  + Add test-hashmap to .gitignore
230   (merged to 'next' on 2013-12-06 at f90be3d)
231  + read-cache.c: fix memory leaks caused by removed cache entries
232  + builtin/update-index.c: cleanup update_one
233  + fix 'git update-index --verbose --again' output
234  + remove old hash.[ch] implementation
235  + name-hash.c: remove cache entries instead of marking them CE_UNHASHED
236  + name-hash.c: use new hash map implementation for cache entries
237  + name-hash.c: remove unreferenced directory entries
238  + name-hash.c: use new hash map implementation for directories
239  + diffcore-rename.c: use new hash map implementation
240  + diffcore-rename.c: simplify finding exact renames
241  + diffcore-rename.c: move code around to prepare for the next patch
242  + buitin/describe.c: use new hash map implementation
243  + add a hashtable implementation that supports O(1) removal
244  + submodule: don't access the .gitmodules cache entry after removing it
246  Improvements to our hash table to get it to meet the needs of the
247  msysgit fscache project, with some nice performance improvements.
249  The tip one does not seem to have reached concensus (yet).
251  Will hold.
254 * jc/create-directories-microopt (2013-11-11) 1 commit
255  - checkout: most of the time we have good leading directories
257  Of unknown value until tested on non-Linux platforms (especially
258  Windows).
260  Will hold.
263 * jt/commit-fixes-footer (2013-10-30) 1 commit
264  - commit: Add -f, --fixes <commit> option to add Fixes: line
266  There is an ongoing discussion around this topic; in general I am
267  fairly negative on a new feature that is too narrow and prefer a
268  more generic solution that can be tailored for specific needs, as
269  many people stated in the thread.
271  cc/interpret-trailers could be such a generic solution (although
272  there don't seem to be much concensus yet).
274  Will discard.
277 * np/pack-v4 (2013-09-18) 90 commits
278  . packv4-parse.c: add tree offset caching
279  . t1050: replace one instance of show-index with verify-pack
280  . index-pack, pack-objects: allow creating .idx v2 with .pack v4
281  . unpack-objects: decode v4 trees
282  . unpack-objects: allow to save processed bytes to a buffer
283  - ...
285  Nico and Duy advancing the eternal vaporware pack-v4.  This is here
286  primarily for wider distribution of the preview edition.
288  Temporarily ejected from 'pu', to try out jk/pack-bitmap, which
289  this topic conflicts with.
292 * mf/graph-show-root (2013-10-25) 1 commit
293  . graph.c: mark root commit differently
295  In a repository with multiple-roots, "log --graph", especially with
296  "--oneline", does not give the reader enough visual cue to see
297  where one line of history ended and a separate history began.
299  This is the version that marks the roots 'x' when they would have
300  been marked as '*'; Keshav Kini suggested an alternative of giving
301  an extra blank line after every root, which I tend to think is a
302  better approach to the problem.
304  Will discard.
307 * tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
308  - perf-lib: add test_perf_cleanup target
309  - perf-lib: split starting the test from the execution
311  Add test_perf_cleanup shell function to the perf suite, that allows
312  the script writers to define a test with a clean-up action.
314  Will hold.
317 * yt/shortened-rename (2013-10-18) 2 commits
318  - SQUASH??? style fixes and s/omit/shorten/ where appropriate
319  - diff.c: keep arrow(=>) on show_stats()'s shortened filename part to make rename visible
321  Attempts to give more weight on the fact that a filepair represents
322  a rename than showing substring of the actual path when diffstat
323  lines are not wide enough.
325  I am not sure if that is solving a right problem, though.
328 * rv/send-email-cache-generated-mid (2013-08-21) 2 commits
329  - git-send-email: Cache generated message-ids, use them when prompting
330  - git-send-email: add optional 'choices' parameter to the ask sub
332  Will discard.
335 * rj/read-default-config-in-show-ref-pack-refs (2013-06-17) 3 commits
336  - ### DONTMERGE: needs better explanation on what config they need
337  - pack-refs.c: Add missing call to git_config()
338  - show-ref.c: Add missing call to git_config()
340  The changes themselves are probably good, but it is unclear what
341  basic setting needs to be read for which exact operation.
343  Waiting for clarification.
344  $gmane/228294
347 * jc/format-patch (2013-04-22) 2 commits
348  - format-patch: --inline-single
349  - format-patch: rename "no_inline" field
351  A new option to send a single patch to the standard output to be
352  appended at the bottom of a message.  I personally have no need for
353  this, but it was easy enough to cobble together.  Tests, docs and
354  stripping out more MIMEy stuff are left as exercises to interested
355  parties.
358 * jk/gitweb-utf8 (2013-04-08) 4 commits
359  - gitweb: Fix broken blob action parameters on blob/commitdiff pages
360  - gitweb: Don't append ';js=(0|1)' to external links
361  - gitweb: Make feed title valid utf8
362  - gitweb: Fix utf8 encoding for blob_plain, blobdiff_plain, commitdiff_plain, and patch
364  Various fixes to gitweb.
366  Drew Northup volunteered to take a look into this.
367  $gmane/226216
370 * jc/show-branch (2013-06-07) 5 commits
371  - show-branch: use commit slab to represent bitflags of arbitrary width
372  - show-branch.c: remove "all_mask"
373  - show-branch.c: abstract out "flags" operation
374  - show-branch.c: lift all_mask/all_revs to a global static
375  - show-branch.c: update comment style
377  Waiting for the final step to lift the hard-limit before sending it out.
379 --------------------------------------------------
380 [Cooking]
382 * bs/stdio-undef-before-redef (2014-01-31) 1 commit
383   (merged to 'next' on 2014-01-31 at 9874918)
384  + git-compat-util.h: #undef (v)snprintf before #define them
386  When we replace broken macros from stdio.h in git-compat-util.h,
387  #undef them to avoid re-definition warnings from the C
388  preprocessor.
390  Will cook in 'next'.
393 * ep/varscope (2014-01-31) 7 commits
394   (merged to 'next' on 2014-01-31 at d198f5d)
395  + builtin/gc.c: reduce scope of variables
396  + builtin/fetch.c: reduce scope of variable
397  + builtin/commit.c: reduce scope of variables
398  + builtin/clean.c: reduce scope of variable
399  + builtin/blame.c: reduce scope of variables
400  + builtin/apply.c: reduce scope of variables
401  + bisect.c: reduce scope of variable
403  Shrink lifetime of variables by moving their definitions to an
404  inner scope where appropriate.
406  Will cook in 'next'.
409 * mw/symlinks (2014-02-04) 6 commits
410  - setup: don't dereference in-tree symlinks for absolute paths
411  - setup: add abspath_part_inside_repo() function
412  - t0060: add tests for prefix_path when path begins with work tree
413  - t0060: add test for prefix_path when path == work tree
414  - t0060: add test for prefix_path on symlinks via absolute paths
415  - t3004: add test for ls-files on symlinks via absolute paths
417  All subcommands that take pathspecs mishandled an in-tree symbolic
418  link when given it as a full path from the root (which arguably is
419  a sick way to use pathspecs).  "git ls-files -s $(pwd)/RelNotes" in
420  our tree is an easy reproduction recipe.
422  We may want to add tests to illustrate symptoms that are visible to
423  the end user, but the updated code looked reasonable.
425  Will merge to 'next'.
428 * ks/diff-c-with-diff-order-more (2014-02-05) 5 commits
429  - combine-diff: move changed-paths scanning logic into its own function
430  - combine-diff: move show_log_first logic/action out of paths scanning
431  - tree-diff: no need to pass match to skip_uninteresting()
432  - tree-diff: no need to manually verify that there is no mode change for a path
433  - tests: add checking that combine-diff emits only correct paths
434  (this branch uses ks/diff-c-with-diff-order.)
436  By avoiding running full two-way diff between the resulting
437  revision and each of its N parents, combine-diff can be sped up
438  significantly.
440  Not quite sure if we want another custom tree walker for it, or it
441  should be written by using existing two-way diff with the result of
442  earlier intersect_path() as pathspec.
445 * bc/gpg-sign-everywhere (2014-02-03) 9 commits
446  - pull: add the --gpg-sign option.
447  - rebase: add the --gpg-sign option
448  - rebase: parse options in stuck-long mode
449  - rebase: don't try to match -M option
450  - rebase: remove useless arguments check
451  - am: add the --gpg-sign option
452  - am: parse options in stuck-long mode
453  - git-sh-setup.sh: add variable to use the stuck-long mode
454  - cherry-pick, revert: add the --gpg-sign option
456  Teach "--gpg-sign" option to many commands that create commits.
458  Changes to some scripted Porcelains use unsafe variable
459  substitutions and still need to be tightened.
461  Waiting for a reroll.
464 * ds/rev-parse-required-args (2014-01-28) 1 commit
465   (merged to 'next' on 2014-01-31 at 73b7514)
466  + rev-parse: check i before using argv[i] against argc
468  "git rev-parse --default" without the required option argument did
469  not diagnose it as an error.
471  Will cook in 'next'.
474 * jk/config-path-include-fix (2014-01-28) 2 commits
475   (merged to 'next' on 2014-01-31 at 8550a9e)
476  + handle_path_include: don't look at NULL value
477  + expand_user_path: do not look at NULL path
479  include.path variable (or any variable that expects a path that can
480  use ~username expansion) in the configuration file is not a
481  boolean, but the code failed to check it.
483  Will cook in 'next'.
486 * jk/repack-honor-pack-keep (2014-01-28) 1 commit
487  - repack: add `repack.honorpackkeep` config var
488  (this branch uses jk/pack-bitmap.)
490  Optionally allow "git repack" to include objects that exist in kept
491  packs in newly created packfiles.
493  Waiting for response to review comments.
496 * nd/submodule-pathspec-ending-with-slash (2014-01-27) 8 commits
497   (merged to 'next' on 2014-01-31 at cfddaa5)
498  + clean: use cache_name_is_other()
499  + clean: replace match_pathspec() with dir_path_match()
500  + Pass directory indicator to match_pathspec_item()
501  + match_pathspec: match pathspec "foo/" against directory "foo"
502  + dir.c: prepare match_pathspec_item for taking more flags
503  + Rename match_pathspec_depth() to match_pathspec()
504  + Convert some match_pathspec_depth() to dir_path_match()
505  + Convert some match_pathspec_depth() to ce_path_match()
507  Allow "git cmd path/", when the 'path' is where a submodule is
508  bound to the top-level working tree, to match 'path', despite the
509  extra and unnecessary trailing slash.
511  Will cook in 'next'.
514 * lt/request-pull (2014-01-31) 4 commits
515  - pull-request: test updates
516  - request-pull: pick up tag message as before
517  - Make request-pull able to take a refspec of form local:remote
518  - Make 'git request-pull' more strict about matching
520  Waiting for the updates to settle.
523 * bk/refresh-missing-ok-in-merge-recursive (2014-01-27) 4 commits
524   (merged to 'next' on 2014-01-29 at 614c158)
525  + merge-recursive.c: Tolerate missing files while refreshing index
526  + read-cache.c: Extend make_cache_entry refresh flag with options
527  + read-cache.c: Refactor --ignore-missing implementation
528  + t3030-merge-recursive: Test known breakage with empty work tree
530  Allows "merge-recursive" to work in an empty (temporary) working
531  tree again when there are renames involved, correcting an old
532  regression in 1.7.7 era.
534  Will cook in 'next'.
537 * nd/diff-quiet-stat-dirty (2014-01-27) 2 commits
538   (merged to 'next' on 2014-01-31 at 8b6e35d)
539  + diff: do not quit early on stat-dirty files
540  + Move diffcore_skip_stat_unmatch core logic out for reuse later
542  "git diff --quiet -- pathspec1 pathspec2" sometimes did not return
543  correct status value.
545  Will cook in 'next'.
548 * cc/interpret-trailers (2014-01-27) 17 commits
549  - Documentation: add documentation for 'git interpret-trailers'
550  - trailer: add tests for commands using env variables
551  - trailer: set author and committer env variables
552  - trailer: add tests for trailer command
553  - trailer: execute command from 'trailer.<name>.command'
554  - strbuf: add strbuf_replace()
555  - trailer: add new_trailer_item() function
556  - trailer: if no input file is passed, read from stdin
557  - trailer: add tests for "git interpret-trailers"
558  - trailer: add interpret-trailers command
559  - trailer: put all the processing together and print
560  - trailer: parse trailers from input file
561  - strbuf: add strbuf_isspace()
562  - trailer: process command line trailer arguments
563  - trailer: read and process config information
564  - trailer: process trailers from file and arguments
565  - Add data structures and basic functions for commit trailers
567  Waiting for a reroll.
570 * dk/blame-janitorial (2014-01-22) 2 commits
571   (merged to 'next' on 2014-01-29 at 0b7ea97)
572  + Eliminate same_suspect function in builtin/blame.c
573  + builtin/blame.c: struct blame_entry does not need a prev link
575  Code clean-up.
577  Will cook in 'next'.
580 * ks/diff-c-with-diff-order (2014-02-03) 5 commits
581   (merged to 'next' on 2014-02-04 at 24a8b2e)
582  + combine-diff: simplify intersect_paths() further
583  + combine-diff: combine_diff_path.len is not needed anymore
584  + combine-diff: optimize combine_diff_path sets intersection
585  + diff test: add tests for combine-diff with orderfile
586  + diffcore-order: export generic ordering interface
587  (this branch is used by ks/diff-c-with-diff-order-more.)
589  Teach combine-diff to honour the path-output-order imposed by
590  diffcore-order.
592  Will cook in 'next'.
595 * bl/blame-full-history (2014-01-14) 1 commit
596  - blame: new option --prefer-first to better handle merged cherry-picks
598  By disabling the tree-same optimization (which is consistent with
599  the default behaviour of "git log"-family of commands), make "git
600  blame" sometimes produce different result from the original code.
602  Because the "git blame" output can give result for each line from
603  only one lineage of the history, however, this can be only useful
604  when you are lucky---unlike "--full-history" of "git log"-family,
605  where we can show commits from both lineages of histories with an
606  equal weight.  See $gmane/240392 for more detailed discussion.
608  Will discard.
611 * da/pull-ff-configuration (2014-01-15) 2 commits
612   (merged to 'next' on 2014-01-22 at 2686b09)
613  + pull: add --ff-only to the help text
614  + pull: add pull.ff configuration
616  "git pull" learned to pay attention to pull.ff configuration
617  variable.
619  Will cook in 'next'.
622 * wk/submodule-on-branch (2014-01-27) 4 commits
623  - Documentation: Describe 'submodule update --remote' use case
624  - submodule: Explicit local branch creation in module_clone
625  - submodule: Document module_clone arguments in comments
626  - submodule: Make 'checkout' update_module explicit
628  Makes sure 'submodule update' modes that do not detach HEADs can
629  be used more pleasantly by checking out a concrete branch when
630  cloning them to prime the well.
632  Will merge to 'next'.
635 * jk/warn-on-object-refname-ambiguity (2014-01-09) 6 commits
636  - get_sha1: drop object/refname ambiguity flag
637  - get_sha1: speed up ambiguous 40-hex test
638  - FIXUP: teach DO_FOR_EACH_NO_RECURSE to prime_ref_dir()
639  - refs: teach for_each_ref a flag to avoid recursion
640  - cat-file: fix a minor memory leak in batch_objects
641  - cat-file: refactor error handling of batch_objects
643  Expecting a reroll.
646 * ap/remote-hg-skip-null-bookmarks (2014-01-02) 1 commit
647  - remote-hg: do not fail on invalid bookmarks
649  Reported to break tests ($gmane/240005)
650  Expecting a reroll.
653 * jk/pack-bitmap (2014-01-23) 25 commits
654   (merged to 'next' on 2014-01-27 at 0b1dcb5)
655  + ewah: support platforms that require aligned reads
656  + read-cache: use get_be32 instead of hand-rolled ntoh_l
657  + block-sha1: factor out get_be and put_be wrappers
658   (merged to 'next' on 2014-01-16 at ddac2d2)
659  + do not discard revindex when re-preparing packfiles
660   (merged to 'next' on 2014-01-10 at bdbe0a4)
661  + pack-bitmap: implement optional name_hash cache
662  + t/perf: add tests for pack bitmaps
663  + t: add basic bitmap functionality tests
664  + count-objects: recognize .bitmap in garbage-checking
665  + repack: consider bitmaps when performing repacks
666  + repack: handle optional files created by pack-objects
667  + repack: turn exts array into array-of-struct
668  + repack: stop using magic number for ARRAY_SIZE(exts)
669  + pack-objects: implement bitmap writing
670  + rev-list: add bitmap mode to speed up object lists
671  + pack-objects: use bitmaps when packing objects
672  + pack-objects: split add_object_entry
673  + pack-bitmap: add support for bitmap indexes
674  + documentation: add documentation for the bitmap format
675  + ewah: compressed bitmap implementation
676  + compat: add endianness helpers
677  + sha1_file: export `git_open_noatime`
678  + revision: allow setting custom limiter function
679  + pack-objects: factor out name_hash
680  + pack-objects: refactor the packing list
681  + revindex: export new APIs
682  (this branch is used by jk/repack-honor-pack-keep.)
684  Borrows the bitmap index into packfiles from JGit to speed up
685  enumeration of objects involved in a commit range without having to
686  fully traverse the history.
688  Will cook in 'next'.
691 * nv/commit-gpgsign-config (2013-12-17) 3 commits
692   (merged to 'next' on 2014-01-03 at 9780cbb)
693  + test the commit.gpgsign config option
694  + commit-tree: add and document --no-gpg-sign
695  + Add the commit.gpgsign option to sign all commits
697  Introduce commit.gpgsign configuration variable to force every
698  commit to be GPG signed.  The variable cannot be overriden from the
699  command line of some of the commands that create commits except for
700  "git commit" and "git commit-tree", but I am not convinced that it
701  is a good idea to sprinkle support for --no-gpg-sign everywhere.
703  Will cook in 'next'.
706 * cc/starts-n-ends-with-endgame (2013-12-05) 1 commit
707   (merged to 'next' on 2014-01-07 at 4cdf8d0)
708  + strbuf: remove prefixcmp() and suffixcmp()
710  Endgame for the cc/starts-n-ends-with topic; this needs to be
711  evil-merged with other topics that introduce new uses of
712  prefix/suffix-cmp functions.
714  Will cook in 'next' until Git 2.0.
717 * gj/push-more-verbose-advice (2013-11-13) 1 commit
718   (merged to 'next' on 2013-12-06 at 574b18a)
719  + push: switch default from "matching" to "simple"
721  Originally merged to 'next' on 2013-11-21
723  Explain 'simple' and 'matching' in "git push" advice message; the
724  topmost patch is a rebase of jc/push-2.0-default-to-simple on top
725  of it.
727  Will cook in 'next' until Git 2.0.
730 * tr/merge-recursive-index-only (2014-02-05) 3 commits
731  - merge-recursive: -Xindex-only to leave worktree unchanged
732  - merge-recursive: internal flag to avoid touching the worktree
733  - merge-recursive: remove dead conditional in update_stages()
734  (this branch is used by tr/remerge-diff.)
736  Will hold.
739 * jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit
740   (merged to 'next' on 2013-12-06 at ead2ec8)
741  + git add: -u/-A now affects the entire working tree
743  Will cook in 'next' until Git 2.0.
746 * jc/core-checkstat-2.0 (2013-05-06) 1 commit
747   (merged to 'next' on 2013-12-06 at ae18007)
748  + core.statinfo: remove as promised in Git 2.0
750  Will cook in 'next' until Git 2.0.
753 * jc/push-2.0-default-to-simple (2013-06-18) 1 commit
754   (merged to 'next' on 2013-12-06 at 6fad61c)
755  + push: switch default from "matching" to "simple"
757  Will cook in 'next' until Git 2.0.
760 * jc/add-2.0-ignore-removal (2013-04-22) 1 commit
761   (merged to 'next' on 2013-12-06 at fbaa75a)
762  + git add <pathspec>... defaults to "-A"
764  Updated endgame for "git add <pathspec>" that defaults to "--all"
765  aka "--no-ignore-removal".
767  Will cook in 'next' until Git 2.0.
770 * jc/hold-diff-remove-q-synonym-for-no-deletion (2013-07-19) 1 commit
771   (merged to 'next' on 2013-12-06 at 083d67c)
772  + diff: remove "diff-files -q" in a version of Git in a distant future
774  Will cook in 'next' until a distant future.
776 --------------------------------------------------
777 [Discarded]
779 * jk/branch-at-publish (2014-01-23) 6 commits
780  . t1507 (rev-parse-upstream): fix typo in test title
781  . implement @{publish} shorthand
782  . branch_get: provide per-branch pushremote pointers
783  . branch_get: return early on error
784  . interpret_branch_name: factor out upstream handling
785  . sha1_name: refactor upstream_mark
787  Rebased to be jk/branch-at-publish-rebased to share the same change
788  with the jk/interpret-branch-name-fix topic.
791 * jn/git-gui-chmod+x (2013-11-25) 1 commit
792  . git-gui: chmod +x po2msg, windows/git-gui.sh
794  Now in 'master' from the upstream git-gui repository.
797 * jn/gitk-chmod+x (2013-11-25) 1 commit
798  . gitk: chmod +x po2msg
800  Now in 'master' from the upstream gitk repository.
803 * jc/parse-options-humint (2014-01-22) 1 commit
804  . parse-options: refactor human-friendly-integer parser out of pack-objects
806  Teach parse-options machinery to optionally parse numbers with a
807  unit suffix, e.g. 8g, 4m, 128k.
810 * jk/color-for-more-pagers (2014-01-17) 4 commits
811  . pager: disable colors for some known-bad configurations
812  . DONOTMERGE: needs matching change to git-sh-setup
813  . setup_pager: set MORE=R
814  . setup_pager: refactor LESS/LV environment setting
816  'more' implementation of BSD wants to be told with MORE=R
817  environment before it shows colored output, while 'more' on some
818  other platforms will die when seeing MORE=R environment.  But the
819  consensus is that trying to be too intimately knowledgeable about
820  quirks of various pager implementations on different platforms is a
821  losing proposition.
823  Will be superseded by jk/makefile series when it matures.