Re: Git is not scalable with too many refs/*
- From
Thomas Rast <trast@student.ethz.ch>
- Date
- Sep 9, 2011, 01:13 UTC
- Message-ID
- <201109090313.56898.trast@student.ethz.ch>
- In-Reply-To
- <201109090305.15896.trast@student.ethz.ch>
Thomas Rast wrote:
Show 7 quoted lines
> + const char *argv[] = {NULL, NULL, "--not", "--all", NULL};
> + int argc = ARRAY_SIZE(argv) - 1;
> +
> + init_revisions(&rev, NULL);
>
> which means that the --all needs to walk all commits reachable from
> all refs and flag them as uninteresting.Scratch that, it "only" needs to mark every tip commit and then walk them back to about where the interesting commits end.
In any case, since the uninteresting set only gets larger, it should be possible to reuse the same revision walker.
--
Thomas Rast
trast@{inf,student}.ethz.ch