Lots of talk about git (and mercurial) on my timeline.
So some opinions:
* git rebase is ok
* git push --force on a PR is acceptable
* github pull requests make reviews harder than necessary
* using git-absorb and git-revise[^1] makes my life easier
* git-cinnabar[^2] is an excellent hack
[^1] https://fnordig.de/til/git/git-helpers.html
[^2] https://github.com/glandium/git-cinnabar
for better or for worse I never got into mercurial.
I started at Mozilla nearly 6 years ago, tried getting accustomed to hg for several month to contribute to Firefox and in the end just fell back to git again.