I always hear that it\'s something scary and something I should never do. For example, here\'s how the pull dialog looks like in SourceTree:
So I\'m curious
In the scenario you are listing in SourceTree, SourceTree rebases the local commits that haven't been pushed on top of the changes that you are pulling from the remote.
If you had already pushed changes before using THAT option, those changes wouldn't be rebased because they're already in the remote.
The only exception may be if you have multiple remotes, and have pushed changes to one remote, then do a pull/rebase from another - that could cause serious problems.
Whether you should rebase or not during a pull is a subject of debate. I'm not recommending it, but it is generally safe. https://developer.atlassian.com/blog/2014/12/pull-request-merge-strategies-the-great-debate/
Nothing would happen, but your next push would be not accepted.
Unless you would force push. This would not break remote repository also, so it is also not that bad.
Things go bad when you have more people using this repo. Rewriting history can cause a bit of chaos for others who will pull new changes from remote. Especially if they do not have good knowledge of git. There can be different things that might happen for person pulling rewritten remote branch depending on state of their local repository.
So if someone would work on feature X and you changed the code on which he based his changes, he might get at least upset to downright angry depending on how much of his work you made obsolete.