I use Facebook's scm-prompt.sh from https://bitbucket.org/facebook/hg-experimental/src/3a45413794a0252a817e7e1fda02182658b85183/scripts/scm-prompt.sh. It works with both Git and Mercurial and is fast because it pokes at the repo internals directly instead of going through `git` or `hg`.
On Mon, Aug 15, 2016 at 12:46 PM, Botond Ballo <bba...@mozilla.com> wrote: > Cross-posting to dev-version-control > > On Mon, Aug 15, 2016 at 3:39 PM, <zbranie...@mozilla.com> wrote: > > For the last few months I've been mostly using git clone of > mozilla-central because I'm used to git. Now I'm trying to set up my > mercurial environment to match what I have for git in order to reduce the > bias toward the latter. > > > > One of the crucial parts of my workflow is the git completion shell > prompt that gives me information about branch I'm on and untracked/modified > files. > > > > This is how my shell prompt looks like on gecko-dev (git clone): > > > > zbraniecki@cintra:~/projects/mozilla/gecko-dev (master %=)$ > > > > and if I modify any file it may look like this: > > > > zbraniecki@cintra:~/projects/mozilla/gecko-dev (master +%>)$ > > > > I tried to get something similar for HG, including hg-prompt (written in > python), and vcsprompt (written in C), but both are painfully slow. > > > > What's striking, on the same repo, the git is 3 times faster than hg to > get me the prompt shell. > > > > zbraniecki@cintra:~/projects/mozilla/gecko-dev (master %=)$ time > vcprompt -f "( %b %u%%%m)" > > ( master ?%) > > real 0m0.472s > > user 0m0.236s > > sys 0m0.384s > > > > vs > > > > zbraniecki@cintra:~/projects/mozilla/mozilla-central$ time vcprompt -f > "( %b %u%%%m)" > > ( default %+) > > real 0m1.643s > > user 0m1.224s > > sys 0m0.396s > > > > > > I thought that maybe it's just vcprompt, so I tried status: > > > > zbraniecki@cintra:~/projects/mozilla/mozilla-central$ time hg status > > > > real 0m1.706s > > user 0m1.380s > > sys 0m0.316s > > > > vs. > > > > zbraniecki@cintra:~/projects/mozilla/gecko-dev (master %=)$ time git > status > > On branch master > > Your branch is up-to-date with 'origin/master'. > > > > real 0m0.399s > > user 0m0.204s > > sys 0m0.332s > > > > If I understand correctly our choice of using mercurial over git was > driven by the performance. Am I doing something wrong? > > > > It seems like the performance difference is quite substantial. > > > > zb. > > _______________________________________________ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > _______________________________________________ > dev-version-control mailing list > dev-version-cont...@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-version-control > _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform