Why does git rebase --onto a b, git rebase --onto b a create a different SHA1 from the original? -


suppose have following revision graph, c current branch:

c    \ /   b 

git rebase --onto b creates following:

    c    /    / b 

and git rebase --onto b a returns graph to:

c    \ /   b 

however, new sha1 of c different old sha1 of c, before both rebasings. why case?

the sha1 of commit depends on commit, including metadata. in particular, depends on commit timestamp. twice-rebased commit has new timestamp, has new sha1.

(note there's "author date", when written, , "commiter date", when actual commit recorded. latter has changed. see yourself, use git log --pretty=fuller, or @ commit in gitk.)


Comments

Popular posts from this blog

linux - Mailx and Gmail nss config dir -

c# - Is it possible to remove an existing registration from Autofac container builder? -

php - Mysql PK and FK char(36) vs int(10) -