threads / discuss / 21186

meaning of HEAD in context of filter-branch

Subject: meaning of HEAD in context of filter-branch

## tl;dr

3 messages between Oct 11, 2009 and Oct 12, 2009.

replies: 2people: 2as markdown or json

bill lam· Oct 11, 2009, 02:43 UTC · lore

I tried to process some files that changed between each commit using the command

git filter-branch --tree-filter 'git diff --name-only HEAD^.. | foo

however it seems that HEAD is fixed to mean the HEAD of the current tip before starting git-filter-branch, by trying like this

$ git rev-list -1 HEAD^ 2bf95faed2d51c338ea6fa93e7bb6cc9c1bc759b

git filter-branch --tree-filter 'git rev-list -1 HEAD^ >>/tmp/sha' -- --all $ cat /tmp/sha 2bf95faed2d51c338ea6fa93e7bb6cc9c1bc759b 2bf95faed2d51c338ea6fa93e7bb6cc9c1bc759b 2bf95faed2d51c338ea6fa93e7bb6cc9c1bc759b 2bf95faed2d51c338ea6fa93e7bb6cc9c1bc759b

how to get the HEAD during filter-branch or other workaround?
-- 
regards,
====================================================
GPG key 1024D/4434BAB3 2008-08-24
gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
Andreas Schwab· Oct 11, 2009, 09:38 UTC · re: bill lam · lore

Re: meaning of HEAD in context of filter-branch

bill lam <cbill.lam@gmail.com> writes:
> how to get the HEAD during filter-branch or other workaround?
>From git-filter-index(1):
   Filters
       The filters are applied in the order as listed below. The <command>
       argument is always evaluated in the shell context using the eval
       command (with the notable exception of the commit filter, for technical
       reasons). Prior to that, the $GIT_COMMIT environment variable will be
                                    ^^^^^^^^^^^
       set to contain the id of the commit being rewritten.
Andreas.
-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."
bill lam· Oct 12, 2009, 10:41 UTC · re: Andreas Schwab · lore

Re: meaning of HEAD in context of filter-branch

On Sun, 11 Oct 2009, Andreas Schwab wrote:
>        reasons). Prior to that, the $GIT_COMMIT environment variable will be
>                                     ^^^^^^^^^^^
Thanks. This is what I should use.
-- 
regards,
====================================================
GPG key 1024D/4434BAB3 2008-08-24
gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3

← back to recent threads