v5 only has commit message update in one patch. range-diff below. Also, from "What's cooking" today On Fri, Sep 21, 2018 at 7:22 AM Junio C Hamano <gitster@xxxxxxxxx> wrote: > * nd/the-index (2018-09-17) 23 commits > ... > > Will merge to 'next'. > > As expected, this has close to irritating amount of textual conflicts > with the topics in-flight. Hopefully we can minimize the pain by > letting it pass through quickly? > No objection. I have to warn Junio though, there is still part 5, so the pain will be still there for a bit longer. Unless the new rebase and stash topics get merged first. 1: 9b907ae529 ! 1: 2203a5fbac read-cache.c: remove 'const' from index_has_changes() @@ -3,16 +3,19 @@ read-cache.c: remove 'const' from index_has_changes() This function calls do_diff_cache() which eventually needs to set this - "istate" to unpack_options->src_index (*). This is an unfortunate fact - that unpack_trees() _will_ destroy src_index so we can't really pass a + "istate" to unpack_options->src_index [1]. This is an unfortunate fact + that unpack_trees() _will_ update [2] src_index so we can't really pass a const index_state there. Just remove 'const'. - (*) Right now diff_cache() in diff-lib.c assigns the_index to + [1] Right now diff_cache() in diff-lib.c assigns the_index to src_index. But the plan is to get rid of the_index, so it should be 'istate' from here that gets assigned to src_index. + [2] Some transient bits in the source index are touched. Optional + extensions can also be removed. But other than that the source + tree should still be valid. + Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> - Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> diff --git a/cache.h b/cache.h --- a/cache.h 2: 27518df579 = 2: fc60c5dfcf diff.c: reduce implicit dependency on the_index 3: bd45a50b6d = 3: 9bb467ec06 combine-diff.c: remove implicit dependency on the_index 4: 90ac73d37b = 4: 4304405578 blame.c: rename "repo" argument to "r" 5: c36071a4ab = 5: 71c1bb997e diff.c: remove the_index dependency in textconv() functions 6: 9321bb37a9 = 6: 0c9371ebd6 grep.c: remove implicit dependency on the_index 7: 41b046463c = 7: e6aba3aad9 diff.c: remove implicit dependency on the_index 8: f0d1e5da57 = 8: 8e4c25023f read-cache.c: remove implicit dependency on the_index 9: 3b7c181005 = 9: f605feb11e diff-lib.c: remove implicit dependency on the_index 10: 0f2ed0b54d = 10: fb06c902e2 ll-merge.c: remove implicit dependency on the_index 11: 46d37956a5 = 11: 5a75125df6 merge-blobs.c: remove implicit dependency on the_index 12: 8b7e116fba = 12: c13cd5443d merge.c: remove implicit dependency on the_index 13: 7d5bd2dfbd = 13: 575aea07ed patch-ids.c: remove implicit dependency on the_index 14: c672034cb3 = 14: 78a0762057 sha1-file.c: remove implicit dependency on the_index 15: ce460601c2 = 15: 91bf6b553a rerere.c: remove implicit dependency on the_index 16: 5b338d60aa = 16: b0ee54a0ad userdiff.c: remove implicit dependency on the_index 17: af2269eba7 = 17: 6a7cea2510 line-range.c: remove implicit dependency on the_index 18: 8090b8415f = 18: a19193217a submodule.c: remove implicit dependency on the_index 19: 5db39ed3ef = 19: b0dc3a2f5d tree-diff.c: remove implicit dependency on the_index 20: d3811221c8 = 20: 60e495cd36 ws.c: remove implicit dependency on the_index 21: c313cf1f20 = 21: 5b3c7e6ca4 revision.c: remove implicit dependency on the_index 22: c915607c60 = 22: 357394f04d revision.c: reduce implicit dependency the_repository Nguyễn Thái Ngọc Duy (23): archive.c: remove implicit dependency the_repository read-cache.c: remove 'const' from index_has_changes() diff.c: reduce implicit dependency on the_index combine-diff.c: remove implicit dependency on the_index blame.c: rename "repo" argument to "r" diff.c: remove the_index dependency in textconv() functions grep.c: remove implicit dependency on the_index diff.c: remove implicit dependency on the_index read-cache.c: remove implicit dependency on the_index diff-lib.c: remove implicit dependency on the_index ll-merge.c: remove implicit dependency on the_index merge-blobs.c: remove implicit dependency on the_index merge.c: remove implicit dependency on the_index patch-ids.c: remove implicit dependency on the_index sha1-file.c: remove implicit dependency on the_index rerere.c: remove implicit dependency on the_index userdiff.c: remove implicit dependency on the_index line-range.c: remove implicit dependency on the_index submodule.c: remove implicit dependency on the_index tree-diff.c: remove implicit dependency on the_index ws.c: remove implicit dependency on the_index revision.c: remove implicit dependency on the_index revision.c: reduce implicit dependency the_repository Documentation/technical/api-diff.txt | 4 +- .../technical/api-revision-walking.txt | 4 +- apply.c | 19 +- archive-zip.c | 14 +- archive.c | 2 +- bisect.c | 4 +- blame.c | 63 +++-- builtin/add.c | 4 +- builtin/am.c | 10 +- builtin/blame.c | 4 +- builtin/cat-file.c | 6 +- builtin/checkout.c | 7 +- builtin/commit.c | 4 +- builtin/describe.c | 4 +- builtin/diff-files.c | 2 +- builtin/diff-index.c | 2 +- builtin/diff-tree.c | 2 +- builtin/diff.c | 4 +- builtin/difftool.c | 2 +- builtin/fast-export.c | 2 +- builtin/fmt-merge-msg.c | 2 +- builtin/grep.c | 7 +- builtin/hash-object.c | 2 +- builtin/log.c | 25 +- builtin/merge-tree.c | 2 +- builtin/merge.c | 16 +- builtin/pack-objects.c | 2 +- builtin/prune.c | 2 +- builtin/pull.c | 9 +- builtin/range-diff.c | 2 +- builtin/reflog.c | 2 +- builtin/replace.c | 2 +- builtin/rerere.c | 6 +- builtin/reset.c | 1 + builtin/rev-list.c | 2 +- builtin/revert.c | 2 +- builtin/shortlog.c | 2 +- builtin/submodule--helper.c | 2 +- builtin/update-index.c | 2 +- bundle.c | 4 +- cache.h | 14 +- combine-diff.c | 32 ++- diff-lib.c | 21 +- diff-no-index.c | 9 +- diff.c | 261 ++++++++++-------- diff.h | 22 +- diffcore-break.c | 12 +- diffcore-delta.c | 12 +- diffcore-pickaxe.c | 8 +- diffcore-rename.c | 35 ++- diffcore.h | 13 +- grep.c | 34 ++- grep.h | 10 +- http-push.c | 2 +- line-log.c | 25 +- line-range.c | 22 +- line-range.h | 6 +- list-objects.c | 8 +- ll-merge.c | 17 +- ll-merge.h | 5 +- merge-blobs.c | 16 +- merge-blobs.h | 7 +- merge-recursive.c | 7 +- merge.c | 20 +- notes-merge.c | 9 +- pack-bitmap-write.c | 2 +- patch-ids.c | 4 +- patch-ids.h | 3 +- read-cache.c | 33 ++- ref-filter.c | 2 +- remote.c | 2 +- rerere.c | 121 ++++---- rerere.h | 10 +- revision.c | 76 ++--- revision.h | 15 +- sequencer.c | 18 +- sha1-file.c | 50 ++-- shallow.c | 2 +- submodule.c | 34 ++- submodule.h | 9 +- t/helper/test-revision-walking.c | 2 +- transport.c | 9 +- tree-diff.c | 2 +- userdiff.c | 5 +- userdiff.h | 3 +- ws.c | 5 +- wt-status.c | 10 +- 87 files changed, 749 insertions(+), 552 deletions(-) -- 2.19.0.640.gcd3aa10a8a