Merge branch 'ds/blame-on-bloom'
"git blame" learns to take advantage of the "changed-paths" Bloom filter stored in the commit-graph file. * ds/blame-on-bloom: test-bloom: check that we have expected arguments test-bloom: fix some whitespace issues blame: drop unused parameter from maybe_changed_path blame: use changed-path Bloom filters tests: write commit-graph with Bloom filters revision: complicated pathspecs disable filters
This commit is contained in:
@ -1061,6 +1061,14 @@ parse_done:
|
||||
string_list_clear(&ignore_revs_file_list, 0);
|
||||
string_list_clear(&ignore_rev_list, 0);
|
||||
setup_scoreboard(&sb, path, &o);
|
||||
|
||||
/*
|
||||
* Changed-path Bloom filters are disabled when looking
|
||||
* for copies.
|
||||
*/
|
||||
if (!(opt & PICKAXE_BLAME_COPY))
|
||||
setup_blame_bloom_data(&sb, path);
|
||||
|
||||
lno = sb.num_lines;
|
||||
|
||||
if (lno && !range_list.nr)
|
||||
@ -1164,5 +1172,7 @@ parse_done:
|
||||
printf("num get patch: %d\n", sb.num_get_patch);
|
||||
printf("num commits: %d\n", sb.num_commits);
|
||||
}
|
||||
|
||||
cleanup_scoreboard(&sb);
|
||||
return 0;
|
||||
}
|
||||
|
@ -1700,9 +1700,7 @@ int cmd_commit(int argc, const char **argv, const char *prefix)
|
||||
"new_index file. Check that disk is not full and quota is\n"
|
||||
"not exceeded, and then \"git restore --staged :/\" to recover."));
|
||||
|
||||
if (git_env_bool(GIT_TEST_COMMIT_GRAPH, 0) &&
|
||||
write_commit_graph_reachable(the_repository->objects->odb, 0, NULL))
|
||||
return 1;
|
||||
git_test_write_commit_graph_or_die();
|
||||
|
||||
repo_rerere(the_repository, 0);
|
||||
run_command_v_opt(argv_gc_auto, RUN_GIT_CMD);
|
||||
|
@ -40,6 +40,7 @@
|
||||
#include "branch.h"
|
||||
#include "commit-reach.h"
|
||||
#include "wt-status.h"
|
||||
#include "commit-graph.h"
|
||||
|
||||
#define DEFAULT_TWOHEAD (1<<0)
|
||||
#define DEFAULT_OCTOPUS (1<<1)
|
||||
@ -1700,9 +1701,11 @@ int cmd_merge(int argc, const char **argv, const char *prefix)
|
||||
head_commit);
|
||||
}
|
||||
|
||||
if (squash)
|
||||
if (squash) {
|
||||
finish(head_commit, remoteheads, NULL, NULL);
|
||||
else
|
||||
|
||||
git_test_write_commit_graph_or_die();
|
||||
} else
|
||||
write_merge_state(remoteheads);
|
||||
|
||||
if (merge_was_ok)
|
||||
|
Reference in New Issue
Block a user