3589762367
The merger starts every operation by resetting the repository. That means clearing out any failed previous merges and updating and restoring the branch state to match the upstream origin repo. For repos with a very large number of branches (10k), this can take some time (minutes). This is mostly due to the inefficiency of looking up the origin ref one at a time (gitpython reads the packed-refs file for each lookup, ironically negating the benefit of packed-refs). To bypass this, use our previously developed method for getting all the refs efficiently and do that once at the start of the reset method. Change-Id: If21245cd562c6499378c4f3353332d87c4ca4b47 |
||
---|---|---|
.. | ||
__init__.py | ||
client.py | ||
merger.py | ||
server.py |