1 To: git@vger.kernel.org
3 Subject: What's cooking in git.git (Jun 2014, #02; Fri, 6)
4 X-master-at: 0953113bb5687f42bcdfc3d20dd3a125784ad383
5 X-next-at: 41885497b0c577b31af733b8c4b05bcded1912bd
7 What's cooking in git.git (Jun 2014, #02; Fri, 6)
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 The second batch of topics, all of which have been cooking for quite
15 a while on the 'next' branch, have been merged to 'master'.
17 I am aware of a handful of multi-patch topics sent to the list the
18 past week that have not been picked up, and I won't be picking them
19 up yet, before we have a chance to first have some topics that have
20 been cooking in 'next' during the previous cycle merged to 'master'
21 and then rewind the tip of 'next'. At that point, I may have to ask
22 for them to be rebased on top of the updated 'master' to reduce
23 conflicts. Thanks for your patience.
25 You can find the changes described here in the integration branches
26 of the repositories listed at
28 http://git-blame.blogspot.com/p/git-public-repositories.html
30 --------------------------------------------------
31 [Graduated to "master"]
33 * bc/blame-crlf-test (2014-05-08) 1 commit
34 (merged to 'next' on 2014-05-14 at b819505)
35 + blame: correctly handle files regardless of autocrlf
37 If a file contained CRLF line endings in a repository with
38 core.autocrlf=input, then blame always marked lines as "Not
39 Committed Yet", even if they were unmodified.
42 * da/imap-send-use-credential-helper (2014-04-29) 1 commit
43 (merged to 'next' on 2014-05-12 at b0698a5)
44 + imap-send: use git-credential
46 "git imap-send" learned to ask the credential helper for
47 authentication material.
50 * dk/blame-reorg (2014-04-28) 1 commit
51 (merged to 'next' on 2014-05-14 at 354a0e3)
52 + blame: large-scale performance rewrite
54 "git blame" has been optimized greatly by reorganising the data
55 structure that is used to keep track of the work to be done, thanks
56 to David Karstrup <dak@gnu.org>.
59 * dk/raise-core-deltabasecachelimit (2014-05-06) 1 commit
60 (merged to 'next' on 2014-05-12 at 97ec92a)
61 + Bump core.deltaBaseCacheLimit to 96m
63 The `core.deltabasecachelimit` used to default to 16 MiB, but this
64 proved to be too small, and has been bumped to 96 MiB.
67 * dt/merge-recursive-case-insensitive (2014-05-08) 2 commits
68 (merged to 'next' on 2014-05-12 at 820d524)
69 + mv: allow renaming to fix case on case insensitive filesystems
70 + merge-recursive.c: fix case-changing merge bug
72 On a case insensitive filesystem, merge-recursive incorrectly
73 deleted the file that is to be renamed to a name that is the same
74 except for case differences.
77 * ep/shell-assign-and-export-vars (2014-05-23) 2 commits
78 (merged to 'next' on 2014-05-23 at 7699c0e)
79 + scripts: more "export VAR=VALUE" fixes
80 + scripts: "export VAR=VALUE" construct is not portable
83 * fc/status-printf-squelch-format-zero-length-warnings (2014-05-07) 1 commit
84 (merged to 'next' on 2014-05-12 at 6b04e23)
85 + silence a bunch of format-zero-length warnings
88 * jc/coding-guidelines (2014-05-20) 9 commits
89 (merged to 'next' on 2014-05-23 at bb351fc)
90 + CodingGuidelines: avoid "test <cond> -a/-o <cond>"
91 (merged to 'next' on 2014-05-12 at e1fcf62)
92 + CodingGuidelines: on splitting a long line
93 + CodingGuidelines: on comparison
94 + CodingGuidelines: do not call the conditional statement "if()"
95 + CodingGuidelines: give an example for shell function preamble
96 + CodingGuidelines: give an example for control statements
97 + CodingGuidelines: give an example for redirection
98 + CodingGuidelines: give an example for case/esac statement
99 + CodingGuidelines: once it is in, it is not worth the code churn
101 Some people need these things spelled out, unable to follow advices
102 given by others when they fail to imitate the surrounding existing
106 * jd/subtree (2014-05-13) 6 commits
107 (merged to 'next' on 2014-05-14 at 977db74)
108 + contrib/subtree: allow adding an annotated tag
109 (merged to 'next' on 2014-05-07 at 81b375d)
110 + contrib/subtree/Makefile: clean up rule for "clean"
111 + contrib/subtree/Makefile: clean up rules to generate documentation
112 + contrib/subtree/Makefile: s/libexecdir/gitexecdir/
113 + contrib/subtree/Makefile: use GIT-VERSION-FILE
114 + contrib/subtree/Makefile: scrap unused $(gitdir)
116 Clean-up build procedure of subtree in contrib/.
119 * je/pager-do-not-recurse (2014-04-28) 1 commit
120 (merged to 'next' on 2014-05-12 at 32de470)
121 + pager: do allow spawning pager recursively
123 We used to unconditionally disable the pager in the pager process
124 we spawn to feed out output, but that prevented people who want to
125 run "less" within "less" from doing so.
128 * jj/command-line-adjective (2014-05-21) 1 commit
129 (merged to 'next' on 2014-05-23 at fe136c8)
130 + Documentation: use "command-line" when used as a compound adjective, and fix other minor grammatical issues
133 * jk/commit-C-pick-empty (2014-04-28) 1 commit
134 (merged to 'next' on 2014-05-12 at c187e1e)
135 + commit: do not complain of empty messages from -C
137 "git commit --allow-empty-message -C $commit" did not work when the
138 commit did not have any log message.
141 * jk/grep-tell-run-command-to-cd-when-running-pager (2014-05-07) 1 commit
142 (merged to 'next' on 2014-05-12 at 065cb22)
143 + grep: use run-command's "dir" option for --open-files-in-pager
146 * jk/index-pack-report-missing (2014-05-12) 1 commit
147 (merged to 'next' on 2014-05-14 at 72d40e1)
148 + index-pack: distinguish missing objects from type errors
151 * jk/squelch-compiler-warning-from-funny-error-macro (2014-05-06) 2 commits
152 (merged to 'next' on 2014-05-12 at d9daf8d)
153 + let clang use the constant-return error() macro
154 + inline constant return from error() function
157 * jk/utf8-switch-between-nfd-and-nfc (2014-04-29) 1 commit
158 (merged to 'next' on 2014-05-12 at 948823c)
159 + t3910: show failure of core.precomposeunicode with decomposed filenames
161 Document a known breakage with a test.
164 * jn/contrib-remove-diffall (2014-05-09) 1 commit
165 (merged to 'next' on 2014-05-12 at 416009e)
166 + contrib: remove git-diffall
168 Spring cleaning of contrib/.
171 * jn/contrib-remove-vim (2014-05-09) 1 commit
172 (merged to 'next' on 2014-05-12 at 9e727c8)
173 + contrib: remove vim support instructions
175 Spring cleaning of contrib/.
178 * jn/test-lint-unmoor (2014-05-23) 1 commit
179 (merged to 'next' on 2014-05-23 at aa997bc)
180 + test-lint: find unportable sed, echo, test, and export usage after &&
183 * mc/git-p4-prepare-p4-only (2014-05-27) 1 commit
184 (merged to 'next' on 2014-05-27 at 71572fe)
185 + git-p4: Do not include diff in spec file when just preparing p4
188 * mk/show-s-no-extra-blank-line-for-merges (2014-05-15) 1 commit
189 (merged to 'next' on 2014-05-21 at 3b98b35)
190 + git-show: fix 'git show -s' to not add extra terminator after merge commit
192 "git show -s" (i.e. show log message only) used to incorrectly emit
193 an extra blank line after a merge commit.
196 * mm/pager-less-sans-S (2014-05-07) 1 commit
197 (merged to 'next' on 2014-05-07 at 66ce999)
198 + pager: remove 'S' from $LESS by default
200 Since the very beginning of Git, we gave the LESS environment a
201 default value "FRSX" when we spawn "less" as the pager. "S" (chop
202 long lines instead of wrapping) has been removed from this default
203 set of options, because it is more or less a personal taste thing,
204 as opposed to others that have good justifications (i.e. "R" is
205 very much justified because many kinds of output we produce are
206 colored and "FX" is justified because output we produce is often
207 shorter than a page).
210 * mt/rebase-i-keep-empty-test (2014-05-19) 1 commit
211 (merged to 'next' on 2014-05-21 at d87d266)
212 + rebase --keep-empty -i: add test
215 * nd/status-auto-comment-char (2014-05-19) 2 commits
216 (merged to 'next' on 2014-05-21 at f762e62)
217 + commit: allow core.commentChar=auto for character auto selection
218 + config: be strict on core.commentChar
220 The `core.commentChar` configuration variable is used to specify a
221 custom comment character other than the default "#" to be used in
222 the commit log editor. This can be set to `auto` to attempt to
223 choose a different character that does not conflict with what
224 already starts a line in the message being edited for cases like
225 "git commit --amend".
228 * rs/reflog-exists (2014-05-08) 2 commits
229 (merged to 'next' on 2014-05-12 at 24a1d01)
230 + checkout.c: use ref_exists instead of file_exist
231 + refs.c: add new functions reflog_exists and delete_reflog
234 * sk/spawn-less-case-insensitively-from-grep-O-i (2014-05-15) 1 commit
235 (merged to 'next' on 2014-05-21 at eb28305)
236 + git grep -O -i: if the pager is 'less', pass the '-I' option
238 "git grep -O" to show the lines that hit in the pager did not work
239 well with case insensitive search. We now spawn "less" with its
240 "-I" option when it is used as the pager (which is the default).
243 * sk/submodules-absolute-path-on-windows (2014-05-08) 1 commit
244 (merged to 'next' on 2014-05-14 at 83a05d9)
245 + Revert "submodules: fix ambiguous absolute paths under Windows"
248 * ss/howto-manage-trunk (2014-05-28) 1 commit
249 (merged to 'next' on 2014-05-28 at 5318336)
250 + How to keep a project's canonical history correct.
253 * tb/unicode-6.3-zero-width (2014-05-12) 2 commits
254 (merged to 'next' on 2014-05-14 at 08e0171)
255 + utf8: make it easier to auto-update git_wcwidth()
256 + utf8.c: use a table for double_width
258 Update the logic to compute the display width needed for utf8
259 strings and allow us to more easily maintain the tables used in
262 We may want to let the users choose if codepoints with ambiguous
263 widths are treated as a double or single width in a follow-up patch.
266 * tg/tag-state-tag-name-in-editor-hints (2014-05-07) 1 commit
267 (merged to 'next' on 2014-05-12 at 0b7db32)
268 + builtin/tag.c: show tag name to hint in the message editor
270 "git tag" when editing the tag message shows the name of the tag
271 being edited as a comment in the editor.
274 * tl/relax-in-poll-emulation (2014-04-29) 1 commit
275 (merged to 'next' on 2014-05-12 at 9369b08)
276 + compat/poll: sleep 1 millisecond to avoid busy wait
279 * wg/svn-fe-style-fixes (2014-05-12) 1 commit
280 (merged to 'next' on 2014-05-12 at 88c0e0d)
281 + svn-fe: conform to pep8
284 * wk/doc-clarify-upstream (2014-05-13) 1 commit
285 (merged to 'next' on 2014-05-14 at 6c8fb52)
286 + Documentation: mention config sources for @{upstream}
288 --------------------------------------------------
291 * jc/rev-parse-argh-dashed-multi-words (2014-06-04) 1 commit
292 (merged to 'next' on 2014-06-06 at 8b04440)
293 + update-index: fix segfault with missing --cacheinfo argument
295 "update-index --cacheinfo" in 2.0 crashes on a malformed command line.
297 Will merge to 'master'.
300 * sk/test-cmp-bin (2014-06-04) 1 commit
301 (merged to 'next' on 2014-06-06 at 112ae4b)
302 + t5000, t5003: do not use test_cmp to compare binary files
304 Will merge to 'master'.
307 * dt/refs-check-refname-component-optim (2014-06-05) 1 commit
308 (merged to 'next' on 2014-06-06 at e85fb57)
309 + refs.c: optimize check_refname_component()
311 Will merge to 'master'.
314 * jm/dedup-test-config (2014-06-05) 1 commit
315 (merged to 'next' on 2014-06-06 at 443f096)
316 + t/t7810-grep.sh: remove duplicate test_config()
318 Will merge to 'master'.
320 --------------------------------------------------
323 * nd/multiple-work-trees (2014-03-25) 28 commits
324 - count-objects: report unused files in $GIT_DIR/repos/...
325 - gc: support prune --repos
326 - gc: style change -- no SP before closing bracket
327 - prune: strategies for linked checkouts
328 - checkout: detach if the branch is already checked out elsewhere
329 - checkout: clean up half-prepared directories in --to mode
330 - checkout: support checking out into a new working directory
331 - use new wrapper write_file() for simple file writing
332 - wrapper.c: wrapper to open a file, fprintf then close
333 - setup.c: support multi-checkout repo setup
334 - setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
335 - setup.c: convert check_repository_format_gently to use strbuf
336 - setup.c: detect $GIT_COMMON_DIR in is_git_directory()
337 - setup.c: convert is_git_directory() to use strbuf
338 - git-stash: avoid hardcoding $GIT_DIR/logs/....
339 - *.sh: avoid hardcoding $GIT_DIR/hooks/...
340 - git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
341 - $GIT_COMMON_DIR: a new environment variable
342 - commit: use SEQ_DIR instead of hardcoding "sequencer"
343 - fast-import: use git_path() for accessing .git dir instead of get_git_dir()
344 - reflog: avoid constructing .lock path with git_path
345 - *.sh: respect $GIT_INDEX_FILE
346 - git_path(): be aware of file relocation in $GIT_DIR
347 - path.c: group git_path(), git_pathdup() and strbuf_git_path() together
348 - path.c: rename vsnpath() to do_git_path()
349 - git_snpath(): retire and replace with strbuf_git_path()
350 - path.c: make get_pathname() call sites return const char *
351 - path.c: make get_pathname() return strbuf instead of static buffer
353 A replacement for contrib/workdir/git-new-workdir that does not
354 rely on symbolic links and make sharing of objects and refs safer
355 by making the borrowee and borrowers aware of each other.
358 * mh/lockfile (2014-04-15) 25 commits
359 - trim_last_path_elm(): replace last_path_elm()
360 - resolve_symlink(): take a strbuf parameter
361 - resolve_symlink(): use a strbuf for internal scratch space
362 - change lock_file::filename into a strbuf
363 - commit_lock_file(): use a strbuf to manage temporary space
364 - try_merge_strategy(): use a statically-allocated lock_file object
365 - try_merge_strategy(): remove redundant lock_file allocation
366 - struct lock_file: declare some fields volatile
367 - lockfile: avoid transitory invalid states
368 - commit_lock_file(): die() if called for unlocked lockfile object
369 - commit_lock_file(): inline temporary variable
370 - remove_lock_file(): call rollback_lock_file()
371 - lock_file(): exit early if lockfile cannot be opened
372 - write_packed_entry_fn(): convert cb_data into a (const int *)
373 - prepare_index(): declare return value to be (const char *)
374 - delete_ref_loose(): don't muck around in the lock_file's filename
375 - cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN
376 - lockfile.c: document the various states of lock_file objects
377 - lock_file(): always add lock_file object to lock_file_list
378 - hold_lock_file_for_append(): release lock on errors
379 - lockfile: unlock file if lockfile permissions cannot be adjusted
380 - rollback_lock_file(): set fd to -1
381 - rollback_lock_file(): do not clear filename redundantly
382 - api-lockfile: expand the documentation
383 - unable_to_lock_die(): rename function from unable_to_lock_index_die()
385 Refactor and fix corner-case bugs in the lockfile API, all looked
391 * bg/rebase-off-of-previous-branch (2014-04-16) 1 commit
392 - git-rebase: print name of rev when using shorthand
394 Teach "git rebase -" to report the concrete name of the branch
395 (i.e. the previous one).
397 But it stops short and does not do the same for "git rebase @{-1}".
401 * tr/merge-recursive-index-only (2014-02-05) 3 commits
402 - merge-recursive: -Xindex-only to leave worktree unchanged
403 - merge-recursive: internal flag to avoid touching the worktree
404 - merge-recursive: remove dead conditional in update_stages()
405 (this branch is used by tr/remerge-diff.)
410 * tr/remerge-diff (2014-02-26) 5 commits
411 . log --remerge-diff: show what the conflict resolution changed
412 . name-hash: allow dir hashing even when !ignore_case
413 . merge-recursive: allow storing conflict hunks in index
414 . revision: fold all merge diff variants into an enum merge_diff_mode
415 . combine-diff: do not pass revs->dense_combined_merges redundantly
416 (this branch uses tr/merge-recursive-index-only.)
418 "log -p" output learns a new way to let users inspect a merge
419 commit by showing the differences between the automerged result
420 with conflicts the person who recorded the merge would have seen
421 and the final conflict resolution that was recorded in the merge.
423 Needs to be rebased, now kb/fast-hashmap topic is in.
426 * jk/makefile (2014-02-05) 16 commits
428 . move LESS/LV pager environment to Makefile
429 . Makefile: teach scripts to include make variables
431 . Makefile: auto-build C strings from make variables
432 . Makefile: drop *_SQ variables
434 . Makefile: add c-quote helper function
435 . Makefile: introduce sq function for shell-quoting
436 . Makefile: always create files via make-var
437 . Makefile: store GIT-* sentinel files in MAKE/
438 . Makefile: prefer printf to echo for GIT-*
439 . Makefile: use tempfile/mv strategy for GIT-*
440 . Makefile: introduce make-var helper function
441 . Makefile: fix git-instaweb dependency on gitweb
442 . Makefile: drop USE_GETTEXT_SCHEME from GIT-CFLAGS
444 Simplify the Makefile rules and macros that exist primarily for
445 quoting purposes, and make it easier to robustly express the
451 * po/everyday-doc (2014-01-27) 1 commit
452 - Make 'git help everyday' work
454 This may make the said command to emit something, but the source is
455 not meant to be formatted into a manual pages to begin with, and
456 also its contents are a bit stale. It may be a good first step in
457 the right direction, but needs more work to at least get the
458 mark-up right before public consumption.
463 * jk/branch-at-publish-rebased (2014-01-17) 5 commits
464 . t1507 (rev-parse-upstream): fix typo in test title
465 . implement @{publish} shorthand
466 . branch_get: provide per-branch pushremote pointers
467 . branch_get: return early on error
468 . sha1_name: refactor upstream_mark
470 Give an easier access to the tracking branches from "other" side in
471 a triangular workflow by introducing B@{publish} that works in a
472 similar way to how B@{upstream} does.
474 Meant to be used as a basis for whatever Ram wants to build on.
476 Ejected from 'pu' to unclutter.
479 * fc/publish-vs-upstream (2014-04-21) 8 commits
480 . sha1_name: add support for @{publish} marks
481 . sha1_name: simplify track finding
482 . sha1_name: cleanup interpret_branch_name()
483 . branch: display publish branch
484 . push: add --set-publish option
485 . branch: add --set-publish-to option
486 . Add concept of 'publish' branch
487 . t5516 (fetch-push): fix test restoration
489 Add branch@{publish}; it seems that this is somewhat different from
490 Ram and Peff started working on. At least the tip needs to be
491 rerolled not to squat on @{p} which @{push} and possibly @{pull}
494 Ejected from 'pu' to unclutter.
497 * rb/merge-prepare-commit-msg-hook (2014-01-10) 4 commits
498 - merge: drop unused arg from abort_commit method signature
499 - merge: make prepare_to_commit responsible for write_merge_state
500 - t7505: ensure cleanup after hook blocks merge
501 - t7505: add missing &&
503 Expose more merge states (e.g. $GIT_DIR/MERGE_MODE) to hooks that
504 run during "git merge". The log message stresses too much on one
505 hook, prepare-commit-msg, but it would equally apply to other hooks
506 like post-merge, I think.
508 Waiting for a reroll.
511 * jl/submodule-recursive-checkout (2013-12-26) 5 commits
512 - Teach checkout to recursively checkout submodules
513 - submodule: teach unpack_trees() to update submodules
514 - submodule: teach unpack_trees() to repopulate submodules
515 - submodule: teach unpack_trees() to remove submodule contents
516 - submodule: prepare for recursive checkout of submodules
518 An RFCv2 exists ($gmane/241455) with sizable review comments.
522 * jc/graph-post-root-gap (2013-12-30) 3 commits
523 - WIP: document what we want at the end
524 - graph: remove unused code a bit
525 - graph: stuff the current commit into graph->columns[]
527 This was primarily a RFH ($gmane/239580).
530 * np/pack-v4 (2013-09-18) 90 commits
531 . packv4-parse.c: add tree offset caching
532 . t1050: replace one instance of show-index with verify-pack
533 . index-pack, pack-objects: allow creating .idx v2 with .pack v4
534 . unpack-objects: decode v4 trees
535 . unpack-objects: allow to save processed bytes to a buffer
538 Nico and Duy advancing the eternal vaporware pack-v4. This is here
539 primarily for wider distribution of the preview edition.
541 Needs to be rebased, now the pack-bitmap series is in.
544 * tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
545 - perf-lib: add test_perf_cleanup target
546 - perf-lib: split starting the test from the execution
548 Add test_perf_cleanup shell function to the perf suite, that allows
549 the script writers to define a test with a clean-up action.
554 * jc/show-branch (2014-03-24) 5 commits
555 - show-branch: use commit slab to represent bitflags of arbitrary width
556 - show-branch.c: remove "all_mask"
557 - show-branch.c: abstract out "flags" operation
558 - show-branch.c: lift all_mask/all_revs to a global static
559 - show-branch.c: update comment style
561 Waiting for the final step to lift the hard-limit before sending it out.
563 --------------------------------------------------
566 * jl/status-added-submodule-is-never-ignored (2014-04-07) 2 commits
567 (merged to 'next' on 2014-06-06 at a2d0105)
568 + commit -m: commit staged submodules regardless of ignore config
569 + status/commit: show staged submodules regardless of ignore config
571 submodule.*.ignore and diff.ignoresubmodules are used to ignore all
572 submodule changes in "diff" output, but it can be confusing to
573 apply these configuration values to status and commit.
575 This is a backward-incompatible change, but should be so in a good
578 Will merge to 'master'.
581 * jl/git-gui-show-added-submodule-changes (2014-04-15) 1 commit
582 - git-gui: show staged submodules regardless of ignore config
584 Tentatively queued what I expect to receive via Pat Thoyts.
587 * jl/gitk-show-added-submodule-changes (2014-04-15) 3 commits
588 - gitk: show staged submodules regardless of ignore config
589 - gitk: Merge branch 'new' of https://github.com/vnwildman/gitk
590 - l10n: Init Vietnamese translation
592 Tentatively queued what I expect to receive via Paul Mackerras.
595 * bg/xcalloc-nmemb-then-size (2014-05-27) 12 commits
596 (merged to 'next' on 2014-06-06 at 7058fe5)
597 + transport-helper.c: rearrange xcalloc arguments
598 + remote.c: rearrange xcalloc arguments
599 + reflog-walk.c: rearrange xcalloc arguments
600 + pack-revindex.c: rearrange xcalloc arguments
601 + notes.c: rearrange xcalloc arguments
602 + imap-send.c: rearrange xcalloc arguments
603 + http-push.c: rearrange xcalloc arguments
604 + diff.c: rearrange xcalloc arguments
605 + config.c: rearrange xcalloc arguments
606 + commit.c: rearrange xcalloc arguments
607 + builtin/remote.c: rearrange xcalloc arguments
608 + builtin/ls-remote.c: rearrange xcalloc arguments
610 Like calloc(3), xcalloc() takes nmemb and then size.
612 Will merge to 'master'.
615 * jk/complete-merge-pull (2014-05-27) 2 commits
616 (merged to 'next' on 2014-06-06 at f88b8e3)
617 + completion: add missing options for git-merge
618 + completion: add a note that merge options are shared
620 The completion code did not know about quite a few options that are
621 common between "git merge" and "git pull", and a couple of options
622 unique to "git merge".
624 Will merge to 'master'.
627 * jl/remote-rm-prune (2014-05-27) 3 commits
628 (merged to 'next' on 2014-06-06 at d3bde27)
629 + remote prune: optimize "dangling symref" check/warning
630 + remote: repack packed-refs once when deleting multiple refs
631 + remote rm: delete remote configuration as the last
633 "git remote rm" and "git remote prune" can involve removing many
634 refs at once, which is not a very efficient thing to do when very
635 many refs exist in the packed-refs file.
637 Will merge to 'master'.
640 * jm/instaweb-apache-24 (2014-05-27) 1 commit
641 (merged to 'next' on 2014-06-06 at ab6e494)
642 + git-instaweb: add support for Apache 2.4
644 Will merge to 'master'.
647 * jm/t9138-style-fix (2014-05-27) 1 commit
648 (merged to 'next' on 2014-06-06 at 552098b)
649 + t9138-git-svn-authors-prog.sh fixups
651 Will merge to 'master'.
654 * nd/daemonize-gc (2014-05-27) 1 commit
655 (merged to 'next' on 2014-06-06 at 638c6ca)
656 + gc --auto: do not lock refs in the background
658 "git gc --auto" was recently changed to run in the background to
659 give control back early to the end-user sitting in front of the
660 terminal, but it forgot that housekeeping involving reflogs should
661 be done without other processes competing for accesses to the refs.
663 Will merge to 'master'.
666 * ow/config-mailmap-pathname (2014-05-27) 1 commit
667 (merged to 'next' on 2014-06-06 at a686803)
668 + config: respect '~' and '~user' in mailmap.file
670 mailmap.file configuration names a pathname, hence should honor
671 ~/path and ~user/path as its value.
673 Will merge to 'master'.
676 * rh/prompt-tests (2014-06-05) 11 commits
677 - t9904: new __git_ps1 tests for Zsh
678 - test-lib: make it possible to override how test code is eval'd
679 - lib-prompt-tests.sh: add variable for string that encodes percent in PS1
680 - lib-prompt-tests.sh: put all tests inside a function
681 - t9903: move prompt tests to a new lib-prompt-tests.sh file
682 - t9903: move PS1 color code variable definitions to lib-bash.sh
683 - t9903: include "Bash" in test names via new $shellname var
684 - t9903: run pc mode tests again with PS1 expansion disabled
685 - t9903: move test name prefix to a separate variable
686 - t9903: put the Bash pc mode prompt test cases in a function
687 - t9903: remove Zsh test from the suite of Bash prompt tests
689 Maybe a reroll to limit the damage to test_eval_ is coming?
692 * jm/doc-wording-tweaks (2014-05-28) 1 commit
693 (merged to 'next' on 2014-06-06 at 4dca23e)
694 + Documentation: wording fixes in the user manual and glossary
696 Will merge to 'master'.
699 * jn/gitweb-utf8-in-links (2014-05-27) 1 commit
700 - gitweb: Harden UTF-8 handling in generated links
705 * mn/sideband-no-ansi (2014-06-02) 1 commit
706 (merged to 'next' on 2014-06-06 at f61fc73)
707 + sideband.c: do not use ANSI control sequence on non-terminal
709 Will merge to 'master'.
712 * jc/fetch-push-refmap (2014-06-05) 9 commits
713 - fetch: allow explicit --refmap to override configuration
714 - fetch doc: add a section on configured remote-tracking branches
715 - fetch doc: remove "short-cut" section
716 - fetch doc: update refspec format description
717 - fetch doc: on pulling multiple refspecs
718 - fetch doc: remove notes on outdated "mixed layout"
719 - fetch doc: update note on '+' in front of the refspec
720 - fetch doc: move FETCH_HEAD material lower and add an example
721 - fetch doc: update introductory part for clarity
723 Will merge to 'next'.
726 * jc/shortlog-ref-exclude (2014-06-04) 1 commit
727 (merged to 'next' on 2014-06-06 at a358cbe)
728 + shortlog: allow --exclude=<glob> to be passed
730 Will merge to 'master'.
733 * lt/log-auto-decorate (2014-05-30) 1 commit
734 (merged to 'next' on 2014-06-06 at d451fc1)
735 + git log: support "auto" decorations
737 Will merge to 'master'.
740 * lt/request-pull (2014-06-02) 1 commit
741 (merged to 'next' on 2014-06-06 at ad4d79d)
742 + fix brown paper bag breakage in t5150-request-pull.sh
744 Will merge to 'master'.
747 * na/no-http-test-in-the-middle (2014-05-30) 1 commit
748 (merged to 'next' on 2014-06-06 at e195615)
749 + t5538: move http push tests out to t5542
751 Will merge to 'master'.
754 * pb/trim-trailing-spaces (2014-06-02) 1 commit
755 (merged to 'next' on 2014-06-06 at 741efc2)
756 + dir.c:trim_trailing_spaces(): fix for " \ " sequence
758 Fix an error in parsing of .gitignore files that use a trailing
759 "\ " to mark pathnames that end with a SP.
761 Will merge to 'master'.
764 * rs/mailinfo-header-cmp (2014-06-02) 1 commit
765 (merged to 'next' on 2014-06-06 at 5e856f4)
766 + mailinfo: use strcmp() for string comparison
768 Avoid running over the end of header string while parsing an
769 incoming e-mail message to extract the patch.
771 Will merge to 'master'.
774 * rs/pack-objects-no-unnecessary-realloc (2014-06-02) 1 commit
775 (merged to 'next' on 2014-06-06 at a39f7ad)
776 + pack-objects: use free()+xcalloc() instead of xrealloc()+memset()
778 Avoid unnecessary copy of previous contents when extending the
779 hashtable used in pack-objects.
781 Will merge to 'master'.
784 * ss/userdiff-update-csharp-java (2014-06-02) 2 commits
785 - userdiff: support Java try keyword
786 - userdiff: support C# async methods and correct C# keywords
789 * jk/error-resolve-conflict-advice (2014-06-03) 2 commits
790 (merged to 'next' on 2014-06-06 at f2e7bbf)
791 + error_resolve_conflict: drop quotations around operation
792 + error_resolve_conflict: rewrap advice message
794 Will merge to 'master'.
797 * rs/read-ref-at (2014-06-03) 1 commit
798 (merged to 'next' on 2014-06-06 at 30f9896)
799 + refs.c: change read_ref_at to use the reflog iterators
801 Will merge to 'master'.
804 * sh/enable-preloadindex (2014-06-03) 1 commit
805 (merged to 'next' on 2014-06-06 at 0f0d7da)
806 + environment.c: enable core.preloadindex by default
808 Will merge to 'master'.
811 * ta/string-list-init (2014-06-06) 1 commit
812 (merged to 'next' on 2014-06-06 at f0f2abc)
813 + string-list: spell all values out that are given to a string_list initializer
815 Will merge to 'master'.
818 * jk/daemon-tolower (2014-05-23) 1 commit
819 (merged to 'next' on 2014-05-23 at 23c796d)
820 + daemon/config: factor out duplicate xstrdup_tolower
822 Will merge to 'master'.
825 * jk/strbuf-tolower (2014-05-23) 1 commit
826 (merged to 'next' on 2014-05-23 at b172137)
827 + strbuf: add strbuf_tolower function
829 Will merge to 'master'.
832 * jk/http-errors (2014-05-27) 8 commits
833 (merged to 'next' on 2014-06-06 at 1004dae)
834 + http: default text charset to iso-8859-1
835 + remote-curl: reencode http error messages
836 + strbuf: add strbuf_reencode helper
837 + http: optionally extract charset parameter from content-type
838 + http: extract type/subtype portion of content-type
839 + t5550: test display of remote http error messages
840 + t/lib-httpd: use write_script to copy CGI scripts
841 + test-lib: preserve GIT_CURL_VERBOSE from the environment
843 Propagate the error messages from the webserver better to the
844 client coming over the HTTP transport.
846 Will merge to 'master'.
849 * jm/format-patch-mail-sig (2014-05-27) 2 commits
850 (merged to 'next' on 2014-06-06 at 0c8d703)
851 + format-patch: add "--signature-file=<file>" option
852 + format-patch: make newline after signature conditional
854 Will merge to 'master'.
857 * sk/wincred (2014-05-14) 2 commits
858 (merged to 'next' on 2014-05-21 at a3b9ca3)
859 + wincred: avoid overwriting configured variables
860 + wincred: add install target
862 Will merge to 'master'.
865 * as/pretty-truncate (2014-05-21) 5 commits
866 (merged to 'next' on 2014-05-23 at 94d4c51)
867 + pretty.c: format string with truncate respects logOutputEncoding
868 + t4205, t6006: add tests that fail with i18n.logOutputEncoding set
869 + t4205 (log-pretty-format): use `tformat` rather than `format`
870 + t4041, t4205, t6006, t7102: don't hardcode tested encoding value
871 + t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs
873 Will merge to 'master'.
876 * cc/replace-graft (2014-06-05) 4 commits
877 - contrib: add convert-grafts-to-replace-refs.sh
878 - Documentation: replace: add --graft option
879 - replace: add test for --graft
880 - replace: add --graft option
881 (this branch uses cc/replace-edit.)
884 * jk/argv-array-for-child-process (2014-05-15) 7 commits
885 (merged to 'next' on 2014-05-21 at 5b2fa64)
886 + argv-array: drop "detach" code
887 + get_importer: use run-command's internal argv_array
888 + get_exporter: use argv_array
889 + get_helper: use run-command's internal argv_array
890 + git_connect: use argv_array
891 + run_column_filter: use argv_array
892 + run-command: store an optional argv_array
894 Will merge to 'master'.
897 * jk/diff-files-assume-unchanged (2014-05-15) 1 commit
898 (merged to 'next' on 2014-05-21 at 142d2c8)
899 + run_diff_files: do not look at uninitialized stat data
901 Will merge to 'master'.
904 * jk/report-fail-to-read-objects-better (2014-05-15) 1 commit
905 (merged to 'next' on 2014-05-21 at 77c89fe)
906 + open_sha1_file: report "most interesting" errno
908 Will merge to 'master'.
911 * rr/rebase-autostash-fix (2014-05-20) 2 commits
912 (merged to 'next' on 2014-05-21 at ca4aa40)
913 + rebase -i: test "Nothing to do" case with autostash
914 + rebase -i: handle "Nothing to do" case with autostash
916 Will merge to 'master'.
919 * sk/windows-unc-path (2014-05-20) 1 commit
920 (merged to 'next' on 2014-05-21 at d1f1350)
921 + Windows: Allow using UNC path for git repository
923 Will merge to 'master'.
926 * jk/diff-follow-must-take-one-pathspec (2014-05-20) 1 commit
927 (merged to 'next' on 2014-05-23 at 4653133)
928 + move "--follow needs one pathspec" rule to diff_setup_done
930 Will merge to 'master'.
933 * ab/add-interactive-show-diff-func-name (2014-05-12) 2 commits
934 - SQUASH??? git-add--interactive: Preserve diff heading when splitting hunks
935 - git-add--interactive: Preserve diff heading when splitting hunks
937 Waiting for a reroll.
940 * jk/do-not-run-httpd-tests-as-root (2014-05-12) 1 commit
941 (merged to 'next' on 2014-05-21 at 676392b)
942 + t/lib-httpd: require SANITY prereq
944 Will merge to 'master'.
947 * cb/byte-order (2014-05-30) 3 commits
948 (merged to 'next' on 2014-05-30 at 857617e)
949 + compat/bswap.h: fix endianness detection
950 (merged to 'next' on 2014-05-07 at f55c040)
951 + compat/bswap.h: restore preference __BIG_ENDIAN over BIG_ENDIAN
952 + compat/bswap.h: detect endianness on more platforms that don't use BYTE_ORDER
954 Compatibility enhancement for Solaris.
956 Will merge to 'master'.
959 * cc/replace-edit (2014-05-19) 10 commits
960 (merged to 'next' on 2014-05-19 at fcdd83f)
961 + Documentation: replace: describe new --edit option
962 + replace: add --edit to usage string
963 + replace: add tests for --edit
964 + replace: die early if replace ref already exists
965 + replace: refactor checking ref validity
966 + replace: make sure --edit results in a different object
967 (merged to 'next' on 2014-05-12 at 71449bf)
968 + replace: add --edit option
969 + replace: factor object resolution out of replace_object
970 + replace: use OPT_CMDMODE to handle modes
971 + replace: refactor command-mode determination
972 (this branch is used by cc/replace-graft.)
974 "git replace" learns a new "--edit" option.
976 Will merge to 'master'.
979 * mt/send-email-cover-to-cc (2014-06-04) 3 commits
980 (merged to 'next' on 2014-06-06 at 583f5fc)
981 + t9001: avoid non-portable '\n' with sed
982 (merged to 'next' on 2014-05-12 at b696006)
983 + test/send-email: to-cover, cc-cover tests
984 + git-send-email: two new options: to-cover, cc-cover
986 Will merge to 'master'.
989 * nd/split-index (2014-06-02) 34 commits
990 - fixup! read-cache: new API write_locked_index instead of write_index/write_cache
992 - t1700: new tests for split-index mode
993 - t2104: make sure split index mode is off for the version test
994 - read-cache: force split index mode with GIT_TEST_SPLIT_INDEX
995 - read-tree: note about dropping split-index mode or index version
996 - read-tree: force split-index mode off on --index-output
997 - rev-parse: add --shared-index-path to get shared index path
998 - update-index --split-index: do not split if $GIT_DIR is read only
999 - update-index: new options to enable/disable split index mode
1000 - split-index: strip pathname of on-disk replaced entries
1001 - split-index: do not invalidate cache-tree at read time
1002 - split-index: the reading part
1003 - split-index: the writing part
1004 - read-cache: mark updated entries for split index
1005 - read-cache: save deleted entries in split index
1006 - read-cache: mark new entries for split index
1007 - read-cache: split-index mode
1008 - read-cache: save index SHA-1 after reading
1009 - entry.c: update cache_changed if refresh_cache is set in checkout_entry()
1010 - cache-tree: mark istate->cache_changed on prime_cache_tree()
1011 - cache-tree: mark istate->cache_changed on cache tree update
1012 - cache-tree: mark istate->cache_changed on cache tree invalidation
1013 - unpack-trees: be specific what part of the index has changed
1014 - resolve-undo: be specific what part of the index has changed
1015 - update-index: be specific what part of the index has changed
1016 - read-cache: be specific what part of the index has changed
1017 - read-cache: be strict about "changed" in remove_marked_cache_entries()
1018 - read-cache: store in-memory flags in the first 12 bits of ce_flags
1019 - read-cache: relocate and unexport commit_locked_index()
1020 - read-cache: new API write_locked_index instead of write_index/write_cache
1021 - sequencer: do not update/refresh index if the lock cannot be held
1022 - ewah: delete unused ewah_read_mmap_native declaration
1023 - ewah: fix constness of ewah_read_mmap
1025 The tip two remind us the need for a minor reroll. If I find time
1026 I could try to squash them myself, but it is low priority for me.
1029 * ib/test-selectively-run (2014-06-06) 4 commits
1030 (merged to 'next' on 2014-06-06 at d894205)
1031 + t0000-*.sh: fix the GIT_SKIP_TESTS sub-tests
1032 + test-lib: '--run' to run only specific tests
1033 + test-lib: tests skipped by GIT_SKIP_TESTS say so
1034 + test-lib: document short options in t/README
1036 Allow specifying only certain individual test pieces to be run
1037 using a range notation (e.g. "t1234-test.sh --run='1-4 6 8 9-'").
1039 Will merge to 'master'.
1042 * fc/remote-helper-refmap (2014-04-21) 8 commits
1043 (merged to 'next' on 2014-04-22 at fb5a4c2)
1044 + transport-helper: remove unnecessary strbuf resets
1045 + transport-helper: add support to delete branches
1046 + fast-export: add support to delete refs
1047 + fast-import: add support to delete refs
1048 + transport-helper: add support to push symbolic refs
1049 + transport-helper: add support for old:new refspec
1050 + fast-export: add new --refspec option
1051 + fast-export: improve argument parsing
1053 Allow remote-helper/fast-import based transport to rename the refs
1054 while transferring the history.
1057 * jh/submodule-tests (2014-04-17) 1 commit
1058 - t7410: 210 tests for various 'git submodule update' scenarios
1060 What's the status of this one?
1063 * mt/patch-id-stable (2014-05-06) 6 commits
1064 (merged to 'next' on 2014-05-07 at 6ade68e)
1065 + test doc: test_write_lines does not split its arguments
1066 (merged to 'next' on 2014-05-02 at cfa251b)
1067 + t4204-patch-id.sh: default is now stable
1068 + patch-id: change default to stable
1069 (merged to 'next' on 2014-05-02 at b69326a)
1070 + patch-id-test: test stable and unstable behaviour
1071 + test: add test_write_lines helper
1072 + patch-id: make it stable against hunk reordering
1074 Introduce a new way to compute patch-id for a patch that is not
1075 affected by the order of the paths that appear in the input.
1077 Will merge to 'master'.
1080 * cc/interpret-trailers (2014-05-28) 11 commits
1081 - Documentation: add documentation for 'git interpret-trailers'
1082 - trailer: add tests for commands in config file
1083 - trailer: execute command from 'trailer.<name>.command'
1084 - trailer: add tests for "git interpret-trailers"
1085 - trailer: add interpret-trailers command
1086 - trailer: put all the processing together and print
1087 - trailer: parse trailers from file or stdin
1088 - trailer: process command line trailer arguments
1089 - trailer: read and process config information
1090 - trailer: process trailers from input message and arguments
1091 - trailer: add data structures and basic functions
1093 A new filter to programatically edit the tail end of the commit log