Subject: Re: Generic filters for git archive?

From: René Scharfe <[email-masked]>
Date: Wed, 09 Dec 2009 23:48:37 +0100

Am 08.12.2009 02:06, schrieb Russ Dill:
> I'm trying to add copyright headers to my source files as they are
> exported via git archive. eg:
> 
> * $Copyright$
> 
> to
> 
>  * Copyright (c) 2003-2009 by Foo Bar
>  *
>  * This program is free software; you can redistribute it and/or modify it
>  * under the terms of the GNU General Public License as published by the
>  * Free Software Foundation; either version 2 of the License, or (at your
>  * option) any later version.
>  *
>  * This program is distributed in the hope that it will be useful, but
>  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
>  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
>  * for more details.
>  *
>  * You should have received a copy of the GNU General Public License
>  * along with this program; if not, write to the Free Software Foundation,
>  * Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
> 
> And properly handling things like '# $Copyright$', '// $Copyright$',
> etc. I have a sed script that does this, but no way to apply it to the
> output of git archive. I tried setting up a smudge filter that would
> only smudge output on archive exports, but it doesn't appear that the
> smudge filters get run on git archive.
> 
> I am currently running 1.6.3.3

Is the filter attribute contained in a .gitattribute file that's part of
the tree you are trying to export?  If it's only in the worktree copy,
then you need to use the option --worktree-attributes to make git
archive use it.

René