Rebasing is the process of moving a branch to a new base commit. It is like rewriting the history of a branch.
In Rebasing, we move a branch from one commit to another. By this we can maintain linear project history.
Once the commits are pushed to a public repository, it is not a good practice to use Rebasing.