What is squashing? Squashing is a process in which we squeeze multiple commits into one pretending it is only a single commit. Basically squashing commits means we are rewriting the history of commits to make them look like single commit. Why squashing commits is necessary?