aboutsummaryrefslogtreecommitdiffstats
path: root/commit-graph.h
diff options
context:
space:
mode:
authorTaylor Blau <me@ttaylorr.com>2023-03-20 11:26:52 +0000
committerJunio C Hamano <gitster@pobox.com>2023-03-20 12:17:33 -0700
commitc08645b353514fe14dbd62cf52afd49d0e88146b (patch)
tree84a5f63ae98268bb48424f2d2274329a97e34a5f /commit-graph.h
parent2ee11f7261cc7ac386ec683f774472b0309dcc82 (diff)
downloadgit-c08645b353514fe14dbd62cf52afd49d0e88146b.tar.gz
commit-graph: introduce `ensure_generations_valid()`
Use the just-introduced compute_reachable_generation_numbers_1() to implement a function which dynamically computes topological levels (or corrected commit dates) for out-of-graph commits. This will be useful for the ahead-behind algorithm we are about to introduce, which needs accurate topological levels on _all_ commits reachable from the tips in order to avoid over-counting. Co-authored-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit-graph.h')
-rw-r--r--commit-graph.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/commit-graph.h b/commit-graph.h
index 37faee6b66..73e182ab2d 100644
--- a/commit-graph.h
+++ b/commit-graph.h
@@ -190,4 +190,12 @@ struct commit_graph_data {
*/
timestamp_t commit_graph_generation(const struct commit *);
uint32_t commit_graph_position(const struct commit *);
+
+/*
+ * After this method, all commits reachable from those in the given
+ * list will have non-zero, non-infinite generation numbers.
+ */
+void ensure_generations_valid(struct repository *r,
+ struct commit **commits, size_t nr);
+
#endif