I believe you're misinterpreting the warning.
Say there's a local commit A
that hasn't been pushed, and a commit B
that hasn't been pulled. By running git pull --rebase
, you're gonna destroy commit A
, pull commit B
, and re-create commit A
on top of B
.
Since commit A
is local, this is fine and safe, and it's what the rebase strategy suggests. But, the documentation tells you not to do this if commit A
had already been pushed (to a different branch, for example). In that case, you'd be destroying a publicly available commit, and re-writing public history.