Skip to content

Squash

Press shift+s to enter squash mode. The highlighted (or selected) revision is marked << from >> as the source. Navigate to the target revision and press enter to apply.

Toggle these before applying:

  • e keep emptied: when on, the source revision is kept even if squashing empties it. The source marker changes to << keep empty >>.
  • d use destination message: when on, the target shows << use this message >> and squash uses the target’s commit message directly, skipping the editor.
  • i interactive: when on, squash opens an interactive editor so you can choose individual hunks to move. The source marker shows (interactive).

When the target isn’t in the current revset, press t to open the target picker. It lists bookmarks and tags, and also accepts a raw revset expression.

  • up/down: move
  • tab / shift+tab: autocomplete
  • enter: apply
  • alt+enter: force apply
  • esc: cancel
  • enter: apply
  • alt+enter: force apply
  • esc: cancel
  • f: ace jump
  • @: jump to working copy
  • j/k, pgup/pgdown: navigation

From Details, select files with m or space and press shift+s to open squash pre-filled with those files. This lets you move specific files into a different revision without touching the rest.

Contribute Community