Git graph sandbox

A small repository with commits already on several branches. Merge, rebase and cherry-pick them, and watch which pointers move, which commits get copied and which SHAs change. Drag commits and branch labels onto other commits, or use the buttons. Click a commit for its diff and the exact object Git hashes.

commit merge commit unreachable (only the reflog finds it) copied by rebase or cherry-pick Drag a commit onto another commit to copy it there (cherry-pick) or move it (rebase --onto). Drag a branch label onto a commit to move, merge or rebase it. Click a branch label to switch to it.