My job is done!
I don't need git replace any more !

My modifications:
Line 11:
. "$(git --exec-path)/git-sh-setup"

Adding root-commit arguments:
Line 33:
if [[ $# -ge 2 ]]; then

  mb=$(git rev-parse --verify "${mb}^0") ||
    die "Does not point to a valid commit: $mb"

  # Get the merge base, which is the root of the branch that we are 
  # (For now, ignore the question of whether there is more than one merge 
  mb=$(git merge-base "$onto" "$orig_head")

And auto moving tags:
Line after new_commit=

    git tag -l --points-at "$cmt" | 
    while read T; do
      git tag -f "$T" "$new_commit"

Le mardi 16 septembre 2014 08:44:27 UTC+2, Alcolo Alcolo a écrit :
> Le lundi 15 septembre 2014 23:34:52 UTC+2, Dale Worley a écrit :
>> > From: Alcolo Alcolo <> 
>> > My git history is complex and it's a nightmare to rebase from old 
>> commits. 
>> I'm not sure what you're attempting to do, but this might help.  It's 
>> a rebasing script I wrote.  It appears that it was based on something 
>> Junio wrote.  The concept is that it rebases the current branch, but 
>> unlike the standard git-rebase, it replicates the merging structure 
>> between the merge-base commit and the head of the branch.  (IIRC, the 
>> standard git-rebase creates a linear branch based on some ordering of 
>> the commits in the old branch.) 
>>  Great, I'll try this script. Thank's

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
For more options, visit

Reply via email to