Re: Truncating and cleaning a imported git repositary to make it more usable
- From
Mike Hommey <mh@glandium.org>
- Date
- Mar 28, 2008, 20:44 UTC
- Message-ID
- <20080328204452.GA15737@glandium.org>
- In-Reply-To
- <47ED204E.3020602@viscovery.net>
On Fri, Mar 28, 2008 at 05:43:58PM +0100, Johannes Sixt wrote:
Show 24 quoted lines
> Alex Bennee schrieb: > > On Fri, Mar 28, 2008 at 3:52 PM, Alex Bennee <kernel-hacker@bennee.com> wrote: > > > >> ajb@pitcairn:/export/git/fresh.git$ git-filter-branch --tree-filter > >> 'rm -rf big_dira big_dirb' dev-branch > >> warning: refname 'dev-branch' is ambiguous. > >> Which ref do you want to rewrite? > > > > Ignore me. Not sure why but: > > > > git-checkout dev-branch > > git-filter-branch --tree-filter 'rm -rf big_dira big_dirb' HEAD > > You really shouldn't do it this way, unless you do it on a ramdisk. Better > use an --index-filter. This is modeled after the last example in the man > page (and, of course, untested): > > git filter-branch --index-filter \ > 'git ls-files -s | > grep -v " big_dira" | > grep -v " big_dirb" | > GIT_INDEX_FILE=$GIT_INDEX_FILE.new \ > git update-index --index-info && > mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE' HEAD
git filter-branch --index-filter 'git rm -r --cached big_dira big_dirb' should be working nowadays.
Mike