From: Jeff King Date: Wed, 14 Aug 2013 06:59:33 GMT Subject: Re: ephemeral-branches instead of detached-head? Message-ID: <20130814065933.GB3744@sigill.intra.peff.net> In-Reply-To: <520B2478.3000100@gmail.com> On Wed, Aug 14, 2013 at 12:02:24PM +0530, Sitaram Chamarty wrote: > >> # all reflog entries that are not on a branch, tag, or remote > >> d1 = !gitk --date-order $(git log -g --pretty=%H) --not --branches --tags --remotes > [...] > > > A potential problem is that the output from "log -g --pretty=%H" or > > "fsck | grep dangling" may turn out to be humongous. Other than > > that, they correctly compute what you want. > > I thought I mentioned that but I can't find my email now so maybe I > didn't. > > In practice though, I find that, bash at least seems happy to take > command lines as long as 7+ million characters long, so with the default > reflog expire times, that should work out to 10,000 commits *per day*. > [Tested with: echo {1000000..1900000} > junk; echo `cat junk` | wc] You can also do: git log -g --pretty=%H | git log --stdin --not --branches --tags --remotes to avoid any argv limitations. -Peff