Drag to cherry-pick
Drag selected commit(s) onto the current branch to cherry-pick them. This is the fastest direct-manipulation flow currently available in the page.Drag a commit to create a branch
Drag one commit from the history graph onto the Branches header to create a new branch starting at that commit. This keeps the history action visual and avoids dropping into a separate modal first.Drag a branch to create a branch
Drag an existing branch onto the Branches header to create a new branch based on it. The source branch acts as the base, so the new branch points at the same tip and inherits the history.Drag to merge
Drag a branch onto the current branch to merge it. The drop target is the current branch itself, so you can see exactly which branch is being merged into before confirming.Drag to push to origin
Drag a branch onto the origin remote to publish it. This turns pushing into a direct-manipulation action: the branch is the thing you move, the remote is the drop target.Also available now
- Hold
⌥while dragging a branch onto the current branch to rebase instead of merge.
Roadmap direction
- Reorder, squash, and fixup commits with direct history manipulation.
- Revert commits with a drag modifier.
- Pull branches through remote drop targets.
- Stage, unstage, stash, and apply files through file and stash drop targets.

