Re: filter-branch performance

2014-12-10 Thread Roberto Tyley
On 10 December 2014 at 16:05, Junio C Hamano wrote: > Roberto Tyley writes: > >> The BFG is generally faster than filter-branch for 3 reasons: >> >> 1. No forking - everything stays in the JVM process >> 2. Embarrassingly parallel algorithm makes good use of multi-core machines >> 3. Memoization

Re: filter-branch performance

2014-12-10 Thread Junio C Hamano
Roberto Tyley writes: > The BFG is generally faster than filter-branch for 3 reasons: > > 1. No forking - everything stays in the JVM process > 2. Embarrassingly parallel algorithm makes good use of multi-core machines > 3. Memoization means no Git object (file or folder) is cleaned more than onc

Re: filter-branch performance

2014-12-10 Thread Roberto Tyley
On 10 December 2014 at 14:37, Jeff King wrote: > On Wed, Dec 10, 2014 at 02:18:24PM +, Roberto Tyley wrote: >> object SetCommitterToAuthor extends CommitNodeCleaner { >> override def fixer(kit: CommitNodeCleaner.Kit) = c => >> c.copy(committer = c.author) // PersonIdent class holds name, ema

Re: filter-branch performance

2014-12-10 Thread Jeff King
On Wed, Dec 10, 2014 at 02:18:24PM +, Roberto Tyley wrote: > Depending on how much time you can sink into improving the performance > (versus just allowing the process to run to completion), you could > also look into a non-forking solution, as well as not bothering to > load the commit trees.

Re: filter-branch performance

2014-12-10 Thread Roberto Tyley
On 9 December 2014 at 18:59, Jeff King wrote: > On Tue, Dec 09, 2014 at 07:52:33PM +0100, Henning Moll wrote: >> I assume that there is a lot of process forking going on. Could that be the >> cause? > > Yes. filter-branch is a shell scripts, and it is probably running > multiple git commands per c

Re: filter-branch performance

2014-12-09 Thread Jeff King
On Tue, Dec 09, 2014 at 07:52:33PM +0100, Henning Moll wrote: > i am runningthis command > > git filter-branch --env-filter 'export > GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL" > GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME" GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"' > --prune-empty --tag-name-filter cat -- --a

filter-branch performance

2014-12-09 Thread Henning Moll
Hi, i am runningthis command git filter-branch --env-filter 'export GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL" GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME" GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"' --prune-empty --tag-name-filter cat -- --all in a repository which i copied to /dev/shm before. Accordin