> I'm not sure to understand the point about rebase destroying the history. Does he speak specifically about `git rebase -i` ?
When rebasing, you're at least changing a parent commit and therefore
changing all of your rebased commits, because their SHA1 is also based on
their parents.
> I very often run `git rebase master` in my feature branches to avoid having many conflicts to resolve just before my pull request to master. Once merged in master, initial commits I rebased from master did not seem to have changed. Am I missing something, here ?
As long as you don't rebase a feature branch after you have pushed it into a
remote repository or merged it into an already published branch, you're fine.
When rebasing, you're at least changing a parent commit and therefore changing all of your rebased commits, because their SHA1 is also based on their parents.
> I very often run `git rebase master` in my feature branches to avoid having many conflicts to resolve just before my pull request to master. Once merged in master, initial commits I rebased from master did not seem to have changed. Am I missing something, here ?
As long as you don't rebase a feature branch after you have pushed it into a remote repository or merged it into an already published branch, you're fine.