threads / discuss / 45863

Incorrect handling of interactive rebases with root flag

Subject: Incorrect handling of interactive rebases with root flag

## tl;dr

One message between May 3, 2017 and May 3, 2017.

replies: 0people: 1as markdown or json

Frank Paulo Filho· May 3, 2017, 22:55 UTC · lore

If I run an interactive rebase on a branch without the --root flag, git does not modify (change the hash, etc.) any initial commits that are being "pick"ed in the same order. However, if I use --root, every single commit is modified.

Here's an example:
* Old (immediately after running "git rebase -i --root"):
    pick d89 root
    pick 3e7 bar
    pick 57e baz
* New (after editing the "git-rebase-todo" file):
    pick d89 root
    pick 57e baz
    pick 3e7 bar

After this, AFAIK, only baz and bar's hashes should change. However, the root commit's hash (d89) also changes.

A simpler way to reproduce this is to just run `git rebase -i --root` and rebase without changing anything. Every commit will be modified.

Is this supposed to happen?

← back to recent threads