mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-10 08:52:39 +01:00
No description
db053e1eb7
Summary: arc diff on large mercurial repos was taking 14 seconds just to get to the commit message prompt. With these optimizations it takes 4. - "ancestor(.) - ancestor(XYZ)" is expensive because it has to build the entire 400000+ revision history for both. "XYZ::. - XYZ" is much cheaper because it only looks at the revisions between XYZ and the working directory. - "hg outgoing" has to talk to the server, which is slow. "hg log -r draft()" gives us the same information and is much cheaper. We fall back to 'outgoing' on older versions of mercurial. Of the remaining 4 seconds, 2.5 are spent in 'hg status', which is a bit harder improve. Test Plan: Ran arc diff on our hg repo. Verified it ran faster and the diff was created. Reviewers: epriestley, sid0, bos, dschleimer Reviewed By: epriestley CC: aran, Korvin, tido Differential Revision: https://secure.phabricator.com/D4838 |
||
---|---|---|
bin | ||
externals | ||
resources | ||
scripts | ||
src | ||
.arcconfig | ||
.divinerconfig | ||
.editorconfig | ||
.gitignore | ||
LICENSE | ||
NOTICE | ||
README |
WHAT IS ARCANIST? Arcanist is the command-line tool for Phabricator. It allows you to interact with Phabricator installs to send code for review, download patches, transfer files, view status, make API calls, and various other things. You can find a complete user guide here: http://www.phabricator.com/docs/phabricator/article/Arcanist_User_Guide.html For more information about Phabricator, see: http://phabricator.org/ LICENSE Arcanist is released under the Apache 2.0 license except as otherwise noted.