Hi Phillip and Erik, Le 2021-12-16 à 11:44, Erik Cervin Edin a écrit : > Hi Phillip, > > Yes, I know. > It's just that I was under the impression ORIG_HEAD was to be reverted > to .git/rebase-merge/orig-head at the finish of the rebase. > Personally, it's the behavior I would expect. > > Thanks for the tips. I just hit the same bug (I think it qualifies as one). In fact git-rebase(1) explicitely mentions that ORIG_HEAD is set to the branch tip before the rebase starts: $ git grep -C2 ORIG_HEAD Documentation/git-rebase.txt Documentation/git-rebase.txt-36-The current branch is reset to `<upstream>` or `<newbase>` if the Documentation/git-rebase.txt-37-`--onto` option was supplied. This has the exact same effect as Documentation/git-rebase.txt:38:50:`git reset --hard <upstream>` (or `<newbase>`). `ORIG_HEAD` is set Documentation/git-rebase.txt-39-to point at the tip of the branch before the reset. Documentation/git-rebase.txt-40- Here is my runnable reproducer. It is slightly more complicated than Erik's, since I split the second commit in two, but this is not necessary to trigger the bug; just running 'git reset HEAD^' as Erik wrote is enough. ```bash #!/bin/bash rm -rf repro git init repro ( cd repro # Create 3 commits cat << EOF >test hello every one EOF git add test git commit -m initial cat << EOF >test hello add new lines every and also here one EOF git commit -am second cat << EOF >test hello add new lines every and also here one still more changes EOF git commit -am third # Rebase to split the second commit GIT_SEQUENCE_EDITOR="sed -ie '1 s/^p /e /'" git rebase -i HEAD~2 git reset HEAD^ cat << EOF >test hello add new lines every one EOF git ci -am "second 1/2" cat <<EOF >test hello add new lines every and also here one EOF git ci -am "second 2/2" # Finish rebase and demonstrate bug git rebase --continue echo --- echo "@{1} is :" git log -1 @{1} echo "ORIG_HEAD is :" git log -1 ORIG_HEAD ) ``` Cheers, Philippe.