1 To: git@vger.kernel.org
3 Subject: What's cooking in git.git (Aug 2014, #02; Fri, 8)
4 X-master-at: f82887f29010e1ec88ec1930a99ddc56b6438452
5 X-next-at: edb03e5a9b9b63d0864557f99f339b2b5f3a9e4e
7 What's cooking in git.git (Aug 2014, #02; Fri, 8)
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 release candidate snapshot is out. Hopefully after a
15 week of a calm pre-release "bugfix-only" period, we can do the 2.1
18 You can find the changes described here in the integration branches
19 of the repositories listed at
21 http://git-blame.blogspot.com/p/git-public-repositories.html
23 --------------------------------------------------
24 [Graduated to "master"]
26 * ta/doc-config (2014-07-30) 1 commit
27 (merged to 'next' on 2014-07-31 at ec577fa)
28 + add documentation for writing config files
31 * tf/maint-doc-push (2014-07-31) 1 commit
32 (merged to 'next' on 2014-07-31 at 6a8ef70)
33 + git-push: fix link in man page
35 --------------------------------------------------
38 * tf/imap-send-create (2014-08-01) 3 commits
39 - SQUASH??? varargs form of issue-imap-cmd is no longer used
40 - imap-send: create target mailbox if it is missing
41 - imap-send: clarify CRAM-MD5 vs LOGIN documentation
43 Will merge to 'next' after dealing with the SQUASH??? fix-up.
46 * bc/archive-pax-header-mode (2014-08-04) 1 commit
47 - archive: honor tar.umask even for pax headers
49 Implementations of "tar" that do not understand an extended pax
50 header would extract the contents of it in a regular file; make
51 sure the permission bits of this file follows the same tar.umask
52 configuration setting.
57 * bc/imap-send-doc (2014-08-05) 1 commit
58 - imap-send doc: omit confusing "to use imap-send" modifier
63 * jc/apply-ws-prefix (2014-08-07) 3 commits
64 - apply: omit ws check for excluded paths
65 - apply: hoist use_patch() helper for path exclusion up
66 - apply: use the right attribute for paths in non-Git patches
68 Applying a patch not generated by Git in a subdirectory used to
69 check the whitespace breakage using the attributes for incorrect
70 paths. Also whitespace checks were performed even for paths
71 excluded via "git apply --exclude=<path>" mechanism.
76 * jk/command-line-config-empty-string (2014-08-05) 1 commit
77 - config: teach "git -c" to recognize an empty string
79 "git -c section.var command" and "git -c section.var= command"
80 should pass the configuration differently (the former should be
81 a boolean true, the latter should be an empty string).
86 * jk/pack-bitmap (2014-08-04) 1 commit
87 - pack-bitmap: do not use gcc packed attribute
92 * jk/pretty-empty-format (2014-07-30) 3 commits
93 - pretty: make empty userformats truly empty
94 - pretty: treat "--format=" as an empty userformat
95 - revision: drop useless string offset when parsing "--pretty"
97 "git log --pretty/format=" with an empty format string did not mean
98 the more obvious "No output whatsoever" but "Use default format",
99 which was counterintuitive.
101 Will merge to 'next'.
104 * la/init-doc (2014-08-08) 7 commits
105 - Documentation: git-init: flesh out example
106 - Documentation: git-init: template directory: reword and cross-reference
107 - Documentation: git-init: reword parenthetical statements
108 - Documentation: git-init: --separate-git-dir: clarify
109 - Documentation: git-init: template directory: reword
110 - Documentation: git-init: list items facelift
111 - Documentation: git-init: typographical fixes
113 Will merge to 'next'.
116 * lf/bundle-exclusion (2014-08-07) 1 commit
117 - bundle: fix exclusion of annotated tags
119 Will merge to 'next'.
122 * mm/log-branch-desc-plug-leak (2014-08-07) 1 commit
123 - builtin/log.c: fix minor memory leak
125 Will merge to 'next'.
128 * ta/config-set-1 (2014-08-07) 8 commits
129 - add tests for `git_config_get_string_const()`
130 - add a test for semantic errors in config files
131 - rewrite git_config() to use the config-set API
132 - config: add `git_die_config()` to the config-set API
133 - change `git_config()` return value to void
134 - add line number and file name info to `config_set`
135 - config.c: fix accuracy of line number in errors
136 - config.c: mark error and warnings strings for translation
137 (this branch is used by ta/config-set-2; uses ta/config-set.)
140 * ta/config-set-2 (2014-08-07) 11 commits
141 - branch.c: replace `git_config()` with `git_config_get_string()
142 - alias.c: replace `git_config()` with `git_config_get_string()`
143 - imap-send.c: replace `git_config()` with `git_config_get_*()` family
144 - pager.c: replace `git_config()` with `git_config_get_value()`
145 - builtin/gc.c: replace `git_config()` with `git_config_get_*()` family
146 - rerere.c: replace `git_config()` with `git_config_get_*()` family
147 - fetchpack.c: replace `git_config()` with `git_config_get_*()` family
148 - archive.c: replace `git_config()` with `git_config_get_bool()` family
149 - read-cache.c: replace `git_config()` with `git_config_get_*()` family
150 - http-backend.c: replace `git_config()` with `git_config_get_bool()` family
151 - daemon.c: replace `git_config()` with `git_config_get_bool()` family
152 (this branch uses ta/config-set and ta/config-set-1.)
155 * ta/pretty-parse-config (2014-08-04) 1 commit
156 - pretty.c: make git_pretty_formats_config return -1 on git_config_string failure
158 Will merge to 'next'.
160 --------------------------------------------------
163 * jk/tag-contains (2014-06-30) 8 commits
164 . perf: add tests for tag --contains
165 . tag: use commit_contains
166 . commit: provide a fast multi-tip contains function
167 . string-list: add pos to iterator callback
168 . add functions for memory-efficient bitmaps
169 . paint_down_to_common: use prio_queue
170 . tag: factor out decision to stream tags
171 . tag: allow --sort with -n
176 * ab/add-interactive-show-diff-func-name (2014-05-12) 2 commits
177 - SQUASH??? git-add--interactive: Preserve diff heading when splitting hunks
178 - git-add--interactive: Preserve diff heading when splitting hunks
180 Waiting for a reroll.
183 * jn/gitweb-utf8-in-links (2014-05-27) 1 commit
184 - gitweb: Harden UTF-8 handling in generated links
189 * rh/prompt-tests (2014-06-05) 11 commits
190 - t9904: new __git_ps1 tests for Zsh
191 - test-lib: make it possible to override how test code is eval'd
192 - lib-prompt-tests.sh: add variable for string that encodes percent in PS1
193 - lib-prompt-tests.sh: put all tests inside a function
194 - t9903: move prompt tests to a new lib-prompt-tests.sh file
195 - t9903: move PS1 color code variable definitions to lib-bash.sh
196 - t9903: include "Bash" in test names via new $shellname var
197 - t9903: run pc mode tests again with PS1 expansion disabled
198 - t9903: move test name prefix to a separate variable
199 - t9903: put the Bash pc mode prompt test cases in a function
200 - t9903: remove Zsh test from the suite of Bash prompt tests
202 Expecting a reroll to limit the damage to test_eval_; also reported
203 to be broken with older zsh that are still in the field ($gmane/251231).
206 * ss/userdiff-update-csharp-java (2014-06-02) 2 commits
207 - userdiff: support Java try keyword
208 - userdiff: support C# async methods and correct C# keywords
210 Reviews sent; waiting for a response.
213 * cc/interpret-trailers (2014-05-28) 11 commits
214 - Documentation: add documentation for 'git interpret-trailers'
215 - trailer: add tests for commands in config file
216 - trailer: execute command from 'trailer.<name>.command'
217 - trailer: add tests for "git interpret-trailers"
218 - trailer: add interpret-trailers command
219 - trailer: put all the processing together and print
220 - trailer: parse trailers from file or stdin
221 - trailer: process command line trailer arguments
222 - trailer: read and process config information
223 - trailer: process trailers from input message and arguments
224 - trailer: add data structures and basic functions
226 A new filter to programatically edit the tail end of the commit log
229 What is the status of this one? I think I saw reviews by Michael
230 but after that I do not recall seeing any updates.
233 * mh/lockfile (2014-04-15) 25 commits
234 . trim_last_path_elm(): replace last_path_elm()
235 . resolve_symlink(): take a strbuf parameter
236 . resolve_symlink(): use a strbuf for internal scratch space
237 . change lock_file::filename into a strbuf
238 . commit_lock_file(): use a strbuf to manage temporary space
239 . try_merge_strategy(): use a statically-allocated lock_file object
240 . try_merge_strategy(): remove redundant lock_file allocation
241 . struct lock_file: declare some fields volatile
242 . lockfile: avoid transitory invalid states
243 . commit_lock_file(): die() if called for unlocked lockfile object
244 . commit_lock_file(): inline temporary variable
245 . remove_lock_file(): call rollback_lock_file()
246 . lock_file(): exit early if lockfile cannot be opened
247 . write_packed_entry_fn(): convert cb_data into a (const int *)
248 . prepare_index(): declare return value to be (const char *)
249 . delete_ref_loose(): don't muck around in the lock_file's filename
250 . cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN
251 . lockfile.c: document the various states of lock_file objects
252 . lock_file(): always add lock_file object to lock_file_list
253 . hold_lock_file_for_append(): release lock on errors
254 . lockfile: unlock file if lockfile permissions cannot be adjusted
255 . rollback_lock_file(): set fd to -1
256 . rollback_lock_file(): do not clear filename redundantly
257 . api-lockfile: expand the documentation
258 . unable_to_lock_die(): rename function from unable_to_lock_index_die()
260 Ejected from 'pu' to unclutter.
264 * bg/rebase-off-of-previous-branch (2014-04-16) 1 commit
265 - git-rebase: print name of rev when using shorthand
267 Teach "git rebase -" to report the concrete name of the branch
268 (i.e. the previous one).
270 But it stops short and does not do the same for "git rebase @{-1}".
274 * tr/merge-recursive-index-only (2014-02-05) 3 commits
275 - merge-recursive: -Xindex-only to leave worktree unchanged
276 - merge-recursive: internal flag to avoid touching the worktree
277 - merge-recursive: remove dead conditional in update_stages()
278 (this branch is used by tr/remerge-diff.)
281 * tr/remerge-diff (2014-02-26) 5 commits
282 . log --remerge-diff: show what the conflict resolution changed
283 . name-hash: allow dir hashing even when !ignore_case
284 . merge-recursive: allow storing conflict hunks in index
285 . revision: fold all merge diff variants into an enum merge_diff_mode
286 . combine-diff: do not pass revs->dense_combined_merges redundantly
287 (this branch uses tr/merge-recursive-index-only.)
289 "log -p" output learns a new way to let users inspect a merge
290 commit by showing the differences between the automerged result
291 with conflicts the person who recorded the merge would have seen
292 and the final conflict resolution that was recorded in the merge.
294 Needs to be rebased, now kb/fast-hashmap topic is in.
297 * jk/makefile (2014-02-05) 16 commits
299 . move LESS/LV pager environment to Makefile
300 . Makefile: teach scripts to include make variables
302 . Makefile: auto-build C strings from make variables
303 . Makefile: drop *_SQ variables
305 . Makefile: add c-quote helper function
306 . Makefile: introduce sq function for shell-quoting
307 . Makefile: always create files via make-var
308 . Makefile: store GIT-* sentinel files in MAKE/
309 . Makefile: prefer printf to echo for GIT-*
310 . Makefile: use tempfile/mv strategy for GIT-*
311 . Makefile: introduce make-var helper function
312 . Makefile: fix git-instaweb dependency on gitweb
313 . Makefile: drop USE_GETTEXT_SCHEME from GIT-CFLAGS
315 Simplify the Makefile rules and macros that exist primarily for
316 quoting purposes, and make it easier to robustly express the
322 * po/everyday-doc (2014-01-27) 1 commit
323 - Make 'git help everyday' work
325 This may make the said command to emit something, but the source is
326 not meant to be formatted into a manual pages to begin with, and
327 also its contents are a bit stale. It may be a good first step in
328 the right direction, but needs more work to at least get the
329 mark-up right before public consumption.
334 * rb/merge-prepare-commit-msg-hook (2014-01-10) 4 commits
335 - merge: drop unused arg from abort_commit method signature
336 - merge: make prepare_to_commit responsible for write_merge_state
337 - t7505: ensure cleanup after hook blocks merge
338 - t7505: add missing &&
340 Expose more merge states (e.g. $GIT_DIR/MERGE_MODE) to hooks that
341 run during "git merge". The log message stresses too much on one
342 hook, prepare-commit-msg, but it would equally apply to other hooks
343 like post-merge, I think.
345 Waiting for a reroll.
348 * jc/graph-post-root-gap (2013-12-30) 3 commits
349 - WIP: document what we want at the end
350 - graph: remove unused code a bit
351 - graph: stuff the current commit into graph->columns[]
353 This was primarily a RFH ($gmane/239580).
356 * tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
357 - perf-lib: add test_perf_cleanup target
358 - perf-lib: split starting the test from the execution
360 Add test_perf_cleanup shell function to the perf suite, that allows
361 the script writers to define a test with a clean-up action.
366 * jc/show-branch (2014-03-24) 5 commits
367 - show-branch: use commit slab to represent bitflags of arbitrary width
368 - show-branch.c: remove "all_mask"
369 - show-branch.c: abstract out "flags" operation
370 - show-branch.c: lift all_mask/all_revs to a global static
371 - show-branch.c: update comment style
373 Waiting for the final step to lift the hard-limit before sending it out.
375 --------------------------------------------------
378 * jk/stash-list-p (2014-08-07) 1 commit
379 - stash: default listing to working-tree diff
381 Teach "git stash list -p" to show the difference between the base
382 commit version and the working tree version, which is in line with
383 what "git show" gives.
385 Will merge to 'next'.
388 * pr/remotes-in-hashmap (2014-07-30) 1 commit
389 - use a hashmap to make remotes faster
391 Optimize remotes configuration look-up in a repository with very
392 many remotes defined.
394 Will merge to 'next'.
397 * rs/ref-transaction-multi (2014-07-31) 5 commits
398 - refs.c: make the *_packed_refs functions static
399 - refs.c: make repack_without_refs static
400 - remote.c: use a transaction for deleting refs
401 - refs.c: write updates to packed refs when a transaction has more than one ref
402 - refs.c: move reflog updates into its own function
403 (this branch uses rs/ref-transaction, rs/ref-transaction-1, rs/ref-transaction-reflog and rs/ref-transaction-rename.)
405 Follow-up on rs/ref-transaction series to use the packed-ref to
406 achieve atomicity when multiple refs are involved.
408 No more nitpicks and better design suggestions?
411 * rs/ref-transaction-rename (2014-07-31) 5 commits
412 - refs.c: rollback the lockfile before we die() in repack_without_refs
413 - refs.c: update rename_ref to use a transaction
414 - refs.c: use packed refs when deleting refs during a transaction
415 - refs.c: return error instead of dying when locking fails during transaction
416 - refs.c: allow passing raw git_committer_info as email to _update_reflog
417 (this branch is used by rs/ref-transaction-multi; uses rs/ref-transaction, rs/ref-transaction-1 and rs/ref-transaction-reflog.)
419 Follow-up on rs/ref-transaction series to make renaming a ref
420 transactional (i.e. "delete old and create new" should not leave
421 an in-between state behind when it fails).
423 No more nitpicks and better design suggestions?
426 * nd/lock-paths-absolute (2014-08-01) 3 commits
427 - lockfile.c: store absolute path
428 - lockfile.c: remove PATH_MAX limit in resolve_symlink()
429 - lockfile.c: remove PATH_MAX limitation (except in resolve_symlink)
430 (this branch uses rs/strbuf-getcwd.)
432 Will merge to 'next'.
435 * mm/config-message-i18n (2014-08-01) 1 commit
436 - config.c: mark error and warnings strings for translation
438 Will discard (now at the bottom of ta/config-set-1 topic).
441 * mm/config-edit-global (2014-07-25) 3 commits
442 (merged to 'next' on 2014-07-31 at ecce1c7)
443 + commit: advertise config --global --edit on guessed identity
444 + home_config_paths(): let the caller ignore xdg path
445 + config --global --edit: create a template file if needed
447 Start "git config --edit --global" from a skeletal per-user
448 configuration file contents, instead of a total blank, when the
449 user does not already have any. This immediately reduces the need
450 for a later "Have you forgotten setting core.user?" and we can add
451 more to the template as we gain more experience.
456 * rs/init-no-duplicate-real-path (2014-07-28) 1 commit
457 (merged to 'next' on 2014-07-31 at 683112e)
458 + init: avoid superfluous real_path() calls
463 * rs/ref-transaction-reflog (2014-07-23) 15 commits
464 - refs.c: allow deleting refs with a broken sha1
465 - refs.c: remove lock_any_ref_for_update
466 - refs.c: make unlock_ref/close_ref/commit_ref static
467 - refs.c: rename log_ref_setup to create_reflog
468 - reflog.c: use a reflog transaction when writing during expire
469 - refs.c: allow multiple reflog updates during a single transaction
470 - refs.c: only write reflog update if msg is non-NULL
471 - refs.c: add a flag to allow reflog updates to truncate the log
472 - refs.c: add a transaction function to append a reflog entry
473 - lockfile.c: make hold_lock_file_for_append preserve meaningful errno
474 - refs.c: add a function to append a reflog entry to a fd
475 - refs.c: add a new update_type field to ref_update
476 - refs.c: rename the transaction functions
477 - refs.c: make ref_transaction_delete a wrapper for ref_transaction_update
478 - refs.c: make ref_transaction_create a wrapper to ref_transaction_update
479 (this branch is used by rs/ref-transaction-multi and rs/ref-transaction-rename; uses rs/ref-transaction and rs/ref-transaction-1.)
481 Cover updates to reflog with the same transaction mechanism as used
482 for reflog manipulations.
484 No more nitpicks and better design suggestions?
487 * cb/mergetool-difftool (2014-07-21) 2 commits
488 - difftool: don't assume that default sh is sane
489 - mergetool: don't require a work tree for --tool-help
491 Update the way the "difftool --help" shows the help message that is
492 shared with the "mergetool" to reduce one shell dependency.
494 Will merge to 'next'.
497 * rs/strbuf-getcwd (2014-07-29) 10 commits
498 (merged to 'next' on 2014-07-31 at 6edc3bc)
499 + use strbuf_add_absolute_path() to add absolute paths
500 + abspath: convert absolute_path() to strbuf
501 + use xgetcwd() to set $GIT_DIR
502 + use xgetcwd() to get the current directory or die
503 + wrapper: add xgetcwd()
504 + abspath: convert real_path_internal() to strbuf
505 + abspath: use strbuf_getcwd() to remember original working directory
506 + setup: convert setup_git_directory_gently_1 et al. to strbuf
507 + unix-sockets: use strbuf_getcwd()
508 + strbuf: add strbuf_getcwd()
509 (this branch is used by nd/lock-paths-absolute.)
514 * jc/not-mingw-cygwin (2014-07-21) 2 commits
515 - test prerequisites: enumerate with commas
516 - test prerequisites: eradicate NOT_FOO
518 We have been using NOT_{MINGW,CYGWIN} test prerequisites long
519 before Peff invented support for negated prerequisites e.g. !MINGW
520 and we still add more uses of the former. Convert them to the
521 latter to avoid confusion.
524 * ta/config-set (2014-07-29) 2 commits
525 - test-config: add tests for the config_set API
526 - add `config_set` API for caching config-like files
527 (this branch is used by ta/config-set-1 and ta/config-set-2.)
529 Add in-core caching layer to let us avoid reading the same
530 configuration files number of times.
532 Will merge to 'next'.
535 * rs/ref-transaction-1 (2014-07-16) 20 commits
536 - refs.c: make delete_ref use a transaction
537 - refs.c: make prune_ref use a transaction to delete the ref
538 - refs.c: remove lock_ref_sha1
539 - refs.c: remove the update_ref_write function
540 - refs.c: remove the update_ref_lock function
541 - refs.c: make lock_ref_sha1 static
542 - walker.c: use ref transaction for ref updates
543 - fast-import.c: use a ref transaction when dumping tags
544 - receive-pack.c: use a reference transaction for updating the refs
545 - refs.c: change update_ref to use a transaction
546 - branch.c: use ref transaction for all ref updates
547 - fast-import.c: change update_branch to use ref transactions
548 - sequencer.c: use ref transactions for all ref updates
549 - commit.c: use ref transactions for updates
550 - replace.c: use the ref transaction functions for updates
551 - tag.c: use ref transactions when doing updates
552 - refs.c: add transaction.status and track OPEN/CLOSED/ERROR
553 - refs.c: make ref_transaction_begin take an err argument
554 - refs.c: update ref_transaction_delete to check for error and return status
555 - refs.c: change ref_transaction_create to do error checking and return status
556 (this branch is used by rs/ref-transaction, rs/ref-transaction-multi, rs/ref-transaction-reflog and rs/ref-transaction-rename.)
558 The second batch of the transactional ref update series.
560 No more nitpicks and better design suggestions?
563 * jc/reopen-lock-file (2014-07-14) 1 commit
564 (merged to 'next' on 2014-07-21 at 8277dc9)
565 + lockfile: allow reopening a closed but still locked file
567 Needed in the "commit -p" code path to update the cache tree in the
568 index (e.g. for dt/cache-tree-repair topic).
573 * nd/multiple-work-trees (2014-07-17) 31 commits
574 (merged to 'next' on 2014-07-17 at a29d310)
575 + checkout: don't require a work tree when checking out into a new one
576 + git_path(): keep "info/sparse-checkout" per work-tree
577 + count-objects: report unused files in $GIT_DIR/repos/...
578 + gc: support prune --repos
579 + gc: factor out gc.pruneexpire parsing code
580 + gc: style change -- no SP before closing parenthesis
581 + prune: strategies for linked checkouts
582 + checkout: detach if the branch is already checked out elsewhere
583 + checkout: clean up half-prepared directories in --to mode
584 + checkout: support checking out into a new working directory
585 + use new wrapper write_file() for simple file writing
586 + wrapper.c: wrapper to open a file, fprintf then close
587 + setup.c: support multi-checkout repo setup
588 + setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
589 + setup.c: convert check_repository_format_gently to use strbuf
590 + setup.c: detect $GIT_COMMON_DIR in is_git_directory()
591 + setup.c: convert is_git_directory() to use strbuf
592 + git-stash: avoid hardcoding $GIT_DIR/logs/....
593 + *.sh: avoid hardcoding $GIT_DIR/hooks/...
594 + git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
595 + $GIT_COMMON_DIR: a new environment variable
596 + commit: use SEQ_DIR instead of hardcoding "sequencer"
597 + fast-import: use git_path() for accessing .git dir instead of get_git_dir()
598 + reflog: avoid constructing .lock path with git_path
599 + *.sh: respect $GIT_INDEX_FILE
600 + git_path(): be aware of file relocation in $GIT_DIR
601 + path.c: group git_path(), git_pathdup() and strbuf_git_path() together
602 + path.c: rename vsnpath() to do_git_path()
603 + git_snpath(): retire and replace with strbuf_git_path()
604 + path.c: make get_pathname() call sites return const char *
605 + path.c: make get_pathname() return strbuf instead of static buffer
606 (this branch is used by nd/multiple-work-trees-1.)
608 A replacement for contrib/workdir/git-new-workdir that does not
609 rely on symbolic links and make sharing of objects and refs safer
610 by making the borrowee and borrowers aware of each other.
615 * nd/multiple-work-trees-1 (2014-07-29) 8 commits
616 - checkout --to: do not touch existing target directory
617 - checkout: prefix --to argument properly when cwd is moved
618 - environment.c: fix incorrect git_graft_file initialization
619 - checkout --to: fix dangling pointers in remove_junk()
620 - checkout: no auto-detach if the ref is already checked out
621 - prune --repos: fix uninitialized access
622 - checkout: no need to call check_linked_checkouts if head_ref is NULL
623 - gitrepository-layout.txt: s/ignored/ignored if/
624 (this branch uses nd/multiple-work-trees.)
626 Continue polishing nd/multiple-work-trees topic in 'next'.
628 Will merge to 'next'.
631 * dt/cache-tree-repair (2014-07-14) 4 commits
632 (merged to 'next' on 2014-07-21 at e83db34)
633 + cache-tree: Write updated cache-tree after commit
634 + cache-tree: subdirectory tests
635 + test-dump-cache-tree: invalid trees are not errors
636 + cache-tree: create/update cache-tree on checkout
638 Add a few more places in "commit" and "checkout" that make sure
639 that the cache-tree is fully populated in the index.
644 * hv/submodule-config (2014-06-30) 4 commits
645 (merged to 'next' on 2014-07-17 at 5e0ce45)
646 + do not die on error of parsing fetchrecursesubmodules option
647 + use new config API for worktree configurations of submodules
648 + extract functions for submodule config set and lookup
649 + implement submodule config cache for lookup of submodule names
654 * rs/ref-transaction (2014-07-17) 12 commits
655 - refs.c: fix handling of badly named refs
656 - refs.c: make write_ref_sha1 static
657 - fetch.c: change s_update_ref to use a ref transaction
658 - refs.c: propagate any errno==ENOTDIR from _commit back to the callers
659 - refs.c: pass a skip list to name_conflict_fn
660 - refs.c: call lock_ref_sha1_basic directly from commit
661 - refs.c: move the check for valid refname to lock_ref_sha1_basic
662 - refs.c: pass NULL as *flags to read_ref_full
663 - refs.c: pass the ref log message to _create/delete/update instead of _commit
664 - refs.c: add an err argument to delete_ref_loose
665 - wrapper.c: add a new function unlink_or_msg
666 - wrapper.c: simplify warn_if_unremovable
667 (this branch is used by rs/ref-transaction-multi, rs/ref-transaction-reflog and rs/ref-transaction-rename; uses rs/ref-transaction-1.)
670 * jc/test-lazy-prereq (2014-06-13) 1 commit
671 - tests: drop GIT_*_TIMING_TESTS environment variable support
673 Test-script clean-up.
678 * mt/patch-id-stable (2014-06-10) 1 commit
679 - patch-id: change default to stable
681 Teaches "git patch-id" to compute the patch ID that does not change
682 when the files in a single patch is reordered. As this new algorithm
683 is backward incompatible, the last bit to flip it to be the default
684 is left out of 'master' for now.
688 --------------------------------------------------
691 * jh/submodule-tests (2014-04-17) 1 commit
692 . t7410: 210 tests for various 'git submodule update' scenarios
695 * nd/path-max-is-better-than-hardcoded-magic-1024 (2014-07-17) 1 commit
696 . abspath.c: use PATH_MAX in real_path_internal()
698 rs/strbuf-getcwd topic covers this codepath in a better way.