Shape your changes
Editing a change
Double-click a change to edit it. Your working directory switches to that change, and any edits you make become part of it.
Rebase
Drag a change onto another change to rebase it. The dragged change becomes a child of the drop target.
To update your work with the latest main, right-click and select Rebase on main.
Split
Split breaks a change into smaller pieces.
By file: Click the split icon next to a file to move it to a new change.
By lines: Open the split view, select lines, and move them to a new change.
Squash
Squash merges a change into its parent. Right-click and select Squash.
Use this to combine a small fix with the change it belongs to.
Abandon
Abandon removes a change and all its children from the tree.
Use this for work you don't want to keep—experiments, dead ends, or branches you're discarding.
Revert
Revert creates a new change that undoes a previous one. Unlike abandon, the original change stays in history.
Use this when a change has already shipped to main and you need to undo it.
Duplicate
Duplicate creates a copy of a change. Use this to try a different approach while keeping the original.