Stashes
The Stashes tab is a singleton tab that lists all stashed changes in your repository.
Stash List
Each stash row displays:
- Stash ID badge (stash@{0}, stash@{1}, etc.)
- Stash message (or fallback text if none was provided)
- Branch name where the stash was created
- File count
- Relative timestamp
- +untracked badge (if the stash includes untracked files)
Use the compact mode toggle to hide secondary metadata for a denser view.
Stash Operations
| Action | Effect |
|---|---|
| Apply | Apply the stash without removing it from the list |
| Pop | Apply the stash and remove it |
| Drop | Permanently remove the stash |
| Create Branch | Create a new branch from the stash state |
| Clear All | Drop all stashes at once (with confirmation) |
If applying or popping a stash causes merge conflicts, a banner appears with an Open Changes button to resolve them.
Stash Detail
The Stashes tab uses a master-detail layout. In split mode, clicking a stash shows its detail inline within the tab. In list mode, clicking opens a separate detail tab in the adjacent pane. Ctrl+Click always opens a separate tab.
The detail view shows:
- Full stash metadata (ID, message, branch, date)
- Action buttons (Apply, Pop, Drop, Create Branch)
- Files changed with expandable inline diffs
- Split-diff view per file
The detail tab validates that the stash still exists and disables actions if it was dropped externally.
Creating Stashes
Click Stash Changes in the toolbar to open the Changes tab in stash mode, where you can configure scope and options before stashing.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
| A | Apply selected stash |
| P | Pop selected stash |
| B | Create branch from selected stash |
| Delete | Drop selected stash |
| Shift+Delete | Clear all stashes |
| Enter | Open detail tab |
| Arrow Up/Down | Navigate stash list |
| R | Refresh |