MCPcopy Index your code
hub / github.com/git/git / cache_tree_update

Function cache_tree_update

cache-tree.c:475–503  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

473}
474
475int cache_tree_update(struct index_state *istate, int flags)
476{
477 struct odb_transaction *transaction;
478 int skip, i;
479
480 i = verify_cache(istate, flags);
481
482 if (i)
483 return i;
484
485 if (!istate->cache_tree)
486 istate->cache_tree = cache_tree();
487
488 if (!(flags & WRITE_TREE_MISSING_OK) && repo_has_promisor_remote(the_repository))
489 prefetch_cache_entries(istate, must_check_existence);
490
491 trace_performance_enter();
492 trace2_region_enter("cache_tree", "update", istate->repo);
493 transaction = odb_transaction_begin(the_repository->objects);
494 i = update_one(istate->cache_tree, istate->cache, istate->cache_nr,
495 "", 0, &skip, flags);
496 odb_transaction_commit(transaction);
497 trace2_region_leave("cache_tree", "update", istate->repo);
498 trace_performance_leave("cache_tree_update");
499 if (i < 0)
500 return i;
501 istate->cache_changed |= CACHE_TREE_CHANGED;
502 return 0;
503}
504
505static void write_one(struct strbuf *buffer, struct cache_tree *it,
506 const char *path, int pathlen)

Callers 10

unpack_treesFunction · 0.85
get_cache_tree_oidFunction · 0.85
convert_to_sparseFunction · 0.85
expand_indexFunction · 0.85
cmd__cache_treeFunction · 0.85
cmd__dump_cache_treeFunction · 0.85
merge_working_treeFunction · 0.85
prepare_indexFunction · 0.85
prepare_to_commitFunction · 0.85

Calls 8

verify_cacheFunction · 0.85
repo_has_promisor_remoteFunction · 0.85
prefetch_cache_entriesFunction · 0.85
trace_performance_enterFunction · 0.85
odb_transaction_beginFunction · 0.85
odb_transaction_commitFunction · 0.85
cache_treeFunction · 0.70
update_oneFunction · 0.70

Tested by 2

cmd__cache_treeFunction · 0.68
cmd__dump_cache_treeFunction · 0.68