• Robert Iannucci's avatar
    [git-rebase-update] Disallow `git gc` during git-rebase-update. · d3acb16c
    Robert Iannucci authored
    In theory this should prevent `git rebase-update` from invoking
    potentially expensive `git gc` operations after every `git rebase`
    (ideally once per branch, but sometimes as many as three per branch (!)).
    
    This has outsized effects as the size of the repo or number of branches
    increases, and additionally has penalties on Windows due to git's
    POSIXey assumptions around how disk I/O works.
    
    After doing all rebase stuff, we run `git gc --auto` from rebase-update
    once (assuming we were successful; if the command failed then we don't
    run gc at all).
    
    R=apolito@google.com
    
    Bug: 617218
    Change-Id: I37a8f7953779f15b320e4ed7bb85119cb4bb665a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2868766
    Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
    Reviewed-by: 's avatarAnthony Polito <apolito@google.com>
    Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
    d3acb16c
git_common.py 31.7 KB