squash commits into one commit git code example
Example 1: squash commit history git
# THIS TURNS YOUR WHOLE COMMIT HISTORY INTO ONE SINGLE COMMIT!
# BE CAREFUL!
git rebase --root -i
# In your editor, for each commit except the top, change `pick` to `squash`
Example 2: squash commits on branch
git rebase -i HEAD~20
Example 3: squash 3 commit
$ git rebase -i HEAD~3