gitext-rs / git-stack

Stacked branch management for Git
Apache License 2.0
496 stars 19 forks source link

perf: Remove a lot of uses of fully-sorted commit graph #203

Closed epage closed 2 years ago

epage commented 2 years ago

This is a step towards #194. Using an unbounded revwalk that is topologically sorted is very expensive, once.

This removes most uses and speeds things up when there are no feature branches. With only master on gecko-dev, we went from ~25s to <1s. However, we still need to remove the last topoligical sort which is used for creating the commit graph, so generally people will not see a speed up yet.

However, we did improve the logic for picking protected bases as part of this.