Merge branch 'nd/split-index'
commit788cef81d40070d5755490441abad1a27bc120b7
authorJunio C Hamano <gitster@pobox.com>
Wed, 16 Jul 2014 18:25:40 +0000 (16 11:25 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 16 Jul 2014 18:25:40 +0000 (16 11:25 -0700)
treeebc44e5c83def9855aac4559e87f201882d8f955
parente0a064a10749a8039f28e9bd3de0ffb5cf99e678
parent3e52f70b1505956bf91cb7b107e526d1c67da0a6
Merge branch 'nd/split-index'

An experiment to use two files (the base file and incremental
changes relative to it) to represent the index to reduce I/O cost
of rewriting a large index when only small part of the working tree
changes.

* nd/split-index: (32 commits)
  t1700: new tests for split-index mode
  t2104: make sure split index mode is off for the version test
  read-cache: force split index mode with GIT_TEST_SPLIT_INDEX
  read-tree: note about dropping split-index mode or index version
  read-tree: force split-index mode off on --index-output
  rev-parse: add --shared-index-path to get shared index path
  update-index --split-index: do not split if $GIT_DIR is read only
  update-index: new options to enable/disable split index mode
  split-index: strip pathname of on-disk replaced entries
  split-index: do not invalidate cache-tree at read time
  split-index: the reading part
  split-index: the writing part
  read-cache: mark updated entries for split index
  read-cache: save deleted entries in split index
  read-cache: mark new entries for split index
  read-cache: split-index mode
  read-cache: save index SHA-1 after reading
  entry.c: update cache_changed if refresh_cache is set in checkout_entry()
  cache-tree: mark istate->cache_changed on prime_cache_tree()
  cache-tree: mark istate->cache_changed on cache tree update
  ...
17 files changed:
.gitignore
Makefile
builtin/apply.c
builtin/blame.c
builtin/checkout.c
builtin/clone.c
builtin/commit.c
builtin/merge.c
builtin/mv.c
builtin/reset.c
builtin/update-index.c
cache.h
merge-recursive.c
merge.c
read-cache.c
sequencer.c
unpack-trees.c