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?

Reply via email to