Allow git-filter-branch to process large repositories with lots of branches.
commit3361a548dbedde96d75bd4134e9ab9e6d82774dd
authorLee Carver <Lee.Carver@servicenow.com>
Tue, 10 Sep 2013 22:55:35 +0000 (10 22:55 +0000)
committerJunio C Hamano <gitster@pobox.com>
Thu, 12 Sep 2013 18:00:51 +0000 (12 11:00 -0700)
tree2e16f3eb90775f980e1e34bc53df0ecb38d12e45
parent2ea3df68e881405940596b8c299921f681f8c22c
Allow git-filter-branch to process large repositories with lots of branches.

A recommended way to move trees between repositories is to use
git-filter-branch to revise the history for a single tree:

However, this can lead to "argument list too long" errors when the
original repository has many retained branches (>6k)

    /usr/local/git/libexec/git-core/git-filter-branch: line 270:
    /usr/local/git/libexec/git-core/git: Argument list too long
    Could not get the commits

Saving the output from rev-parse and feeding it into rev-list from
its standard input avoids this problem, since the rev-parse output
is not processed as a command line argument.

Signed-off-by: Lee Carver <Lee.Carver@servicenow.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-filter-branch.sh