From: Andreas Ericsson Date: Wed, 22 Oct 2008 09:54:48 GMT Subject: Re: [irq/urgent]: created 3786fc7: "irq: make variable static" Message-ID: <48FEF868.2010802@op5.se> In-Reply-To: <20081022090010.GC4369@elte.hu> Ingo Molnar wrote: > * Andreas Ericsson wrote: > >> I imagine you'd want to use it to find out which branches you can (or >> can't) merge, and in that case you need to know about all the topics >> which have the commit. Assuming you don't go crazy cherry-picking and >> criss-cross merging, it should only list a few. The output is not as >> fancy as below, but it should be faster than the appended script (by >> several orders of magnitude). > > i solved that particular problem quite well, based on suggestions in a > thread earlier on the git-list. I'm using git branch --no-merged: > > earth4:~/tip> time todo-merge-all > merging the following updated branches: > merging linus ... ... merge done. > > real 0m2.865s > user 0m2.580s > sys 0m0.228s > > that work step used to be over a minute! There are 233 topic branches at > the moment and 18 integration branches. Kudos for making this go really > fast in 1.6.0. > > the thing i'm after is to see the originator branch of changes. "git > name-rev" was suggested by Santi Béjar in this thread and that is > exactly what i need - i'll try to integrate it into some git-log-ish > output tool. > > One thing i noticed is that 'git name-rev' can be quite slow for certain > commits: > > earth4:~/tip> time git name-rev 948f984 > 948f984 tags/tip-safe-poison-pointers-2008-05-26_08_52_Mon~1 > > real 0m2.181s > user 0m2.068s > sys 0m0.092s > > Which seems natural since it might have to dive back into history and > cross-reference it to all names. (there's 400 branches and 450 tags in > this tree, so i'm certainly pushing things!) > > But if i use that in my git-log-line summary tool it might become > quadratic overhead (or worse) very quickly, with minutes of runtime. > What's the timing for "git branch --contains 948f984" ? "git name-rev" parses a lot more just to be able to print a pretty short-name (the reversed "git describe") for you to use. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231