Skip to content

Instantly share code, notes, and snippets.

@ravibhure
Last active September 1, 2020 10:49
Show Gist options
  • Save ravibhure/b9cee2c8f274e5212e6b8d0f43ad8cd9 to your computer and use it in GitHub Desktop.
Save ravibhure/b9cee2c8f274e5212e6b8d0f43ad8cd9 to your computer and use it in GitHub Desktop.
How to squash commits

To squash commits, you can do the following:

Make sure your branch is up to date with the master branch.

Run git rebase -i master.

You should see a list of commits, each commit starting with the word "pick".

Make sure the first commit says "pick" and change the rest from "pick" to "squash". -- This will squash each commit into the previous commit, which will continue until every commit is squashed into the first commit.

Save and close the editor.

It will give you the opportunity to change the commit message.

Save and close the editor again.

Then you have to force push the final, squashed commit: git push --force-with-lease origin HEAD

Squashing commits can be a tricky process but once you figure it out, it's really helpful and keeps our repo concise and clean.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment