Merge branch 'ds/commit-graph-with-grafts'
commit6d8f8ebb74d21b51cfbf427a436094134af36ee2
authorJunio C Hamano <gitster@pobox.com>
Tue, 16 Oct 2018 07:15:59 +0000 (16 16:15 +0900)
committerJunio C Hamano <gitster@pobox.com>
Tue, 16 Oct 2018 07:15:59 +0000 (16 16:15 +0900)
tree0b50647db06413e2f43487b2bfca167105b7f701
parent36d767d02e12c1ff991511b7bd8c1d023340f2ca
parent829a321569d8e8f2c582aef9f0c990df976ab842
Merge branch 'ds/commit-graph-with-grafts'

The recently introduced commit-graph auxiliary data is incompatible
with mechanisms such as replace & grafts that "breaks" immutable
nature of the object reference relationship.  Disable optimizations
based on its use (and updating existing commit-graph) when these
incompatible features are in use in the repository.

* ds/commit-graph-with-grafts:
  commit-graph: close_commit_graph before shallow walk
  commit-graph: not compatible with uninitialized repo
  commit-graph: not compatible with grafts
  commit-graph: not compatible with replace objects
  test-repository: properly init repo
  commit-graph: update design document
  refs.c: upgrade for_each_replace_ref to be a each_repo_ref_fn callback
  refs.c: migrate internal ref iteration to pass thru repository argument
builtin/commit-graph.c
builtin/replace.c
commit-graph.c
commit-graph.h
commit.c
commit.h
refs.c
refs.h
replace-object.c
t/t5318-commit-graph.sh
upload-pack.c