How to combine group of local commits to single push in IDEA?

84,311

Solution 1

You can do it using rebase. Go to VCS/Git/Rebase. Then select Interactive option. It will show you a list of commits, where you can pick which ones you want to squash.

After you hit Start rebasing it will prompt you for a commit message for the squashed commit. After that is done you can push your squashed commit using push dialog.

Squash dialog

More information about rebase in IntelliJ is here.

Solution 2

There is a new way:

Version Control -> Log -> Right click on the commit -> Interactively rebase from here and then you can choose to pick/squash the rest of commits.

Solution 3

For me the simplest way with intellij is :

  • Go to Log tab and chose the commit from which you want to squash
  • Right click and select Reset Branch to this commit
  • Choose the Soft Or Mixin options to keep your changes from the commit
  • Commit your changes and don't forget to check the Amend commit option

Solution 4

With the latest version of IntelliJ you can simply select all the commits, right-click -> Squash commits

Share:
84,311
gstackoverflow
Author by

gstackoverflow

Updated on October 08, 2021

Comments

  • gstackoverflow
    gstackoverflow over 2 years

    In IDEA I am trying to push some commits.

    I have a requirement that on remote server it looks like single action.

    I click to push and see following window enter image description here

    I expected to see squash checkbox here but don't see it.

    Please help me.