Re: branch --contains is unbearably slow [Re: [PATCHv2] Warnings before rebasing -i published history]
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:54:02
Thomas Rast [off-list ref] writes:
I suspect most of your branches are in some way closely related to next,
while I have a lot of cruft fetched from all sorts of people that fell
behind over the years. Can you try
git for-each-ref refs/remotes/ |
while read sha tp ref; do
printf "%8d %8d %s\n" $(
git rev-list --left-right --count $ref...next
) $ref
done
For me the output is as listed below (I ran it with origin/next instead
of next). Note that for almost all of them, a naive merge-base walk
(going back from both until a common commit is found) has to walk
thousands of commits.
I too seem to have a lot of cruft I'd better get rid of. Thanks for
reminding ;-).
$ git for-each-ref refs/remotes/ |
while read sha tp ref; do
printf "%8d %8d %s\n" $(
git rev-list --left-right --count $ref...next
) $ref
done
159 6180 refs/remotes/ab-i18n/i18n
65 6284 refs/remotes/ab-i18n/i18n-add-translations
63 6279 refs/remotes/ab-i18n/i18n-all
93 6244 refs/remotes/ab-i18n/i18n-all-continue
78 6279 refs/remotes/ab-i18n/i18n-all-continue-squash
93 6244 refs/remotes/ab-i18n/i18n-continue
94 6244 refs/remotes/ab-i18n/i18n-continue-with-hindi
92 6236 refs/remotes/ab-i18n/i18n-for-junio
98 6236 refs/remotes/ab-i18n/i18n-for-junio-with-docs
63 6284 refs/remotes/ab-i18n/i18n-gettextize
140 6195 refs/remotes/ab-i18n/i18n-in-pu
160 6195 refs/remotes/ab-i18n/i18n-rewrite
161 6195 refs/remotes/ab-i18n/i18n-rewrite-with-po-line-numbers
140 6232 refs/remotes/ab-i18n/i18n-v2
0 16335 refs/remotes/gfi/HEAD
0 17824 refs/remotes/gfi/maint
0 16335 refs/remotes/gfi/master
31 20748 refs/remotes/gfi/sp/pack4
7 16320 refs/remotes/gfi/sp/sendpack-sideband
3 20518 refs/remotes/gfi/sp/splitpack
2 16325 refs/remotes/gfi/sp/unixsock
0 28459 refs/remotes/git-gui/maint
0 28446 refs/remotes/git-gui/master
3 28459 refs/remotes/git-gui/pu
9 29498 refs/remotes/git-gui/todo
0 15622 refs/remotes/git-p4/git-p4
0 752 refs/remotes/git-svn/HEAD
0 3782 refs/remotes/git-svn/instaweb
0 752 refs/remotes/git-svn/master
0 753 refs/remotes/git-svn/origin
0 13207 refs/remotes/git-svn/spearce/origin
0 6744 refs/remotes/git-svn/webrick
0 865 refs/remotes/github2/maint
0 222 refs/remotes/github2/master
0 4 refs/remotes/github2/next
100 204 refs/remotes/github2/pu
981 29498 refs/remotes/github2/todo
0 865 refs/remotes/gph/maint
0 222 refs/remotes/gph/master
0 4 refs/remotes/gph/next
100 204 refs/remotes/gph/pu
871 29498 refs/remotes/gph/todo
8 16603 refs/remotes/jbf-um/HEAD
3 17804 refs/remotes/jbf-um/better-whitespace-checks
12 18132 refs/remotes/jbf-um/docwork-concepts
1 18010 refs/remotes/jbf-um/docwork-design
1 17849 refs/remotes/jbf-um/docwork-detached
1 18010 refs/remotes/jbf-um/docwork-foreign-scms
1 17883 refs/remotes/jbf-um/docwork-recovery
0 17825 refs/remotes/jbf-um/maint
10 17867 refs/remotes/jbf-um/maint-history
8 16603 refs/remotes/jbf-um/master
1 17804 refs/remotes/jbf-um/messages
1 19546 refs/remotes/jbf-um/parallel-diff
7 20685 refs/remotes/jbf-um/recovery
1 21989 refs/remotes/jbf-um/tutorial-2
48 3056 refs/remotes/ko-private/jch
0 3656 refs/remotes/ko-private/maint
5 22527 refs/remotes/ko-private/maint-1.4.4
0 16075 refs/remotes/ko-private/maint-1.5.4
0 15296 refs/remotes/ko-private/maint-1.5.5
0 14555 refs/remotes/ko-private/maint-1.5.6
0 11606 refs/remotes/ko-private/maint-1.6.2
0 9484 refs/remotes/ko-private/maint-1.6.5
0 8014 refs/remotes/ko-private/maint-1.7.0
0 7333 refs/remotes/ko-private/maint-1.7.1
0 6657 refs/remotes/ko-private/maint-1.7.2
0 6616 refs/remotes/ko-private/master
175 3056 refs/remotes/ko-private/next
0 3171 refs/remotes/ko-private/origin
66 8872 refs/remotes/ko-private/private-jch
99 3027 refs/remotes/ko-private/pu
0 8016 refs/remotes/ko-private/snap
0 11942 refs/remotes/ko-private/test
0 865 refs/remotes/ko/maint
0 222 refs/remotes/ko/master
0 4 refs/remotes/ko/next
100 204 refs/remotes/ko/pu
0 1188 refs/remotes/l10n/master
9 14815 refs/remotes/lea/master
0 14877 refs/remotes/lea/origin
0 18037 refs/remotes/mergetool/master
0 18037 refs/remotes/mergetool/mergetool
918 13101 refs/remotes/mingw/master
862 15327 refs/remotes/mingw/master-borked
0 18173 refs/remotes/pasky.web/master
825 18172 refs/remotes/pasky.web/mob
4 18173 refs/remotes/pasky.web/next
8 18173 refs/remotes/pasky.web/pu
0 28975 refs/remotes/paulus/HEAD
6 29067 refs/remotes/paulus/asdf
0 28989 refs/remotes/paulus/dev
17 29331 refs/remotes/paulus/lines
0 28975 refs/remotes/paulus/master
32 29321 refs/remotes/paulus/new
1100 29498 refs/remotes/repo/html
0 865 refs/remotes/repo/maint
980 29498 refs/remotes/repo/man
0 222 refs/remotes/repo/master
0 4 refs/remotes/repo/next
100 204 refs/remotes/repo/pu
894 29498 refs/remotes/repo/todo
0 13638 refs/remotes/spearce.git/maint
0 13207 refs/remotes/spearce.git/master
149 13176 refs/remotes/spearce.git/next
381 29498 refs/remotes/spearce.git/todo
0 28540 refs/remotes/thoyts/maint
0 28511 refs/remotes/thoyts/master
0 28527 refs/remotes/thoyts/pu
9 29498 refs/remotes/thoyts/todo
0 8920 refs/remotes/trast-doc/HEAD
0 8920 refs/remotes/trast-doc/for-next
0 8920 refs/remotes/trast-doc/master
0 8917 refs/remotes/trast-doc/pu
: