ungit icon indicating copy to clipboard operation
ungit copied to clipboard

Speed up ungit

Open jung-kim opened this issue 2 years ago • 1 comments

closes: #1091

  • Speed optimizations at the graph component #1508
    • speed up logic for NodeViewModel.isViewable() logic by using a map instead of doing array.include()
    • throttling ko observable change triggers.
    • removed unnecessary observables.
    • cleaned up how refs are calculated for NodeViewModel. NodeViewModel.ref() is no longer depends on branchesAndLocalTags() and remoteTags().
    • introduced graph.isBigRepo() to disable some of the features
      • branches.js's branch sorting
      • animations
      • hover graphice ovrlay
    • graph.dropareaGraphActions to be computed

Can someone test on their big repos?? It is an improvements but I'm not sure if it is enough of an improvement.


Node count matters less because we incrementally load nodes. But the over all git ref count from show-ref -d command was the biggest reason for the slow down, and indirectly create nodes.

This PR was tested with a repo with 14498 refs and before ungit was unusable but now it usable without any big issues now.

jung-kim avatar Mar 15 '22 03:03 jung-kim

@jung-kim is there anything here that also works on the nodegit branch where node loading and graph layout is different?

wmertens avatar May 19 '22 14:05 wmertens