Re: modifying the commits before push
From: Sam Steingold <hidden>
Date: 2016-06-15 22:52:49
Hi Dirk,
* Dirk Süsserott [off-list ref] [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="sds@gnu.org" \
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.