I have a git tree that looks like the following:
Because of the review tool we use, we cherry pick changes in rather than merging them. This leaves us with some logical duplicates, whose branch I then just delete. For example, the change one below ssl_tests "Modification: Changing name..." can also be seen in dev.
Now, perhaps this is a lack of understanding on my part of cherry pick, but those commits have different hashes and so are different commits right? Even though they are logically the same.
However, when I go to rebase ssl_tests onto dev, git manages to figure out that those cherry picked commits are upstream and then only rebases the "New Feature: Unit tests..." commit from ssl_tests.
As per usual, with git, this is great! This is exactly what I want! My question though, is how does git figure out that it doesn't need to rebase the other commits if they have different hashes?
Thanks! Stephen