Subject: Re: modifying the commits before push

From: Sam Steingold <[email-masked]>
Date: Wed, 18 Jan 2012 16:47:20 -0500

Hi Dirk,

> * Dirk Süsserott <[email-masked]> [2012-01-18 21:18:34 +0100]:
> Am 18.01.2012 18:49 schrieb Sam Steingold:
>
> to modify the last 4 commits you can use git filter-branch (see the
> manpage):
>
> $ git checkout master
> $ git filter-branch --env-filter \
>    'GIT_COMMITTER_EMAIL="[email-masked]" \
>     GIT_COMMITTER_NAME="Sam Steingold"' \
>    HEAD~4..HEAD
>
> It should tell you that it rewrites 4 commits.

I did this; I got a few messages which scrolled very quickly.
status code was 0, apparently, I was successful.

> The original tree is saved under original/refs/heads/master.

where is that?

> If sth. went wrong, reset your master to that point (easiest with
> gitk, it's steel blue). If it worked, you can delete the
> original/refs/heads/master like so:
>
> $ git for-each-ref --format="%(refname)" \
>     refs/original/ | xargs -n 1 git update-ref -d
>
> Note: Whether it worked or not, remove the original refs afterwards,
> because a second run of git filter-branch will fail if there's already
> an "original" tree.

alas, I could not push because the remote tree was modified in the
meantime, I pulled and now:

# On branch master
# Your branch is ahead of 'origin/master' by 23 commits.
#
nothing to commit (working directory clean)

so, what do I do now?

is there a way for me to get back my original 4 patches, reset my tree
(maybe by rm-rf+clone) and then re-apply them?

thanks!

-- 
Sam Steingold (http://sds.podval.org/) on Ubuntu 11.10 (oneiric) X 11.0.11004000
http://jihadwatch.org http://memri.org http://thereligionofpeace.com
http://www.PetitionOnline.com/tap12009/ http://palestinefacts.org
I don't have an attitude problem. You have a perception problem.