Start a project

Tool 119 of 194 · Git

Git Branch Graph Visualiser

Turn pasted git log output into a readable branch and merge graph, find where two branches split, and see who committed what, without giving anything access to your repository.

Git Branch Graph Visualiser at a glanceIllustration: 1, git log output; 2, processed in your browser; 3, Branch graph.Git Branch Graph Visualiser$ curl -X→ fetch()1git log output3Branch graph2In yourbrowser
1 git log output 2 processed on your device 3 Branch graph

Git Branch Graph Visualiser

Your git log

Run this in your repository and paste the output (it prints hashes, parents, author, date, branches and tags, and the subject):

Command

Branch graph

    Check it in Git

    Commits

    CommitDateAuthorRefsSubjectParents

    Who committed

    01

    What it does

    Draws the branch and merge graph from pasted git log output, finds the merge base of any two branches and counts commits per author.

    • One documented git log format, with a copy button for the command
    • Topological order and lanes like git log --graph
    • Merge base of any two branches, tags or commits, with ahead and behind counts
    • Criss-cross merges, octopus merges and shallow history flagged

    02

    Private by design

    Everything happens in your browser. Nothing you type, paste or upload is sent anywhere, and it keeps working offline once the page has loaded.

    03

    What you get

    An SVG or PNG graph, a commit table and merge bases, with a Copy and a Download button on every result.

    • Git
    • Branches
    • Merge base
    • git log

    Why it matters

    git log --graph draws history in the terminal, but it's hard to share, hard to read past a few branches, and it won't tell you where two branches split without another command. Hosted Git tools draw better graphs, but only for repositories they can see.

    This visualiser works from text. Run one git log command, paste the output and it rebuilds the history: commits in topological order, branches in lanes assigned the way Git's own graph code does, merges joined to both parents, and branch and tag labels from the refs. Pick any two branches, tags or commits to find their merge base the way git merge-base --all does, with how many commits each side has that the other doesn't. Nothing reaches a server, so it's safe for private repositories.

    How it works

    1. InputPasted git log output
    2. In your browserOrdered, laned and joined like git log --graph
    3. OutputA graph, merge bases and who committed what

    Where it fits in a designer's workflow

    1. Plan
    2. Design
    3. Build
    4. Test
    5. Launch
    Explaining a repository's history in a review or a handover.

    By the numbers

    Commits per author in the sample historyPriya Shah: 5 commits in 3 weeks; Sam Hartley: 5 commits in 2 weeks; Alex Kim: 4 commits in 2 weeks; Jo Patel: 2 commits in 2 weeksPriya Shah5 commits in 3 weeksSam Hartley5 commits in 2 weeksAlex Kim4 commits in 2 weeksJo Patel2 commits in 2 weeks
    Counted by this tool from its sample log: 16 commits, 3 merges, drawn 3 lanes wide. Weeks start on Monday, from each commit's author date. Commit counts measure activity, not effort: one commit can be a typo or a week's work. Source: git log pretty formats.
    Show the numbers as a table
    Week startingAlex KimJo PatelPriya ShahSam Hartley
    2026-10-052023
    2026-10-122020
    2026-10-190102
    2026-10-260110

    How to use it

    1. Copy the git log command and run it in your repository.
    2. Paste the output into the box.
    3. Pick two branches, tags or commits to find their merge base.
    4. Filter, then download the graph as SVG or PNG.

    FAQ

    Which git log format does it need?

    The one in the command box: hash, parent hashes, author, date, refs and subject, separated by |. Subjects containing | are fine. Lines from git log --graph also work, as the graph characters are stripped.

    Why are some lines dashed?

    Their parent commit isn't in what you pasted, usually because the clone is shallow or the log was cut with -n. Paste more history to join them up.

    What does 'two best merge bases' mean?

    Both branches merged each other at some point (a criss-cross merge), so there's no single best common ancestor. Git builds a virtual base by merging them; the tool lists both.

    How many commits can it draw?

    Up to 1,500 as SVG with labels; beyond that it draws on a canvas, which stays fast for tens of thousands.

    Does it read my repository?

    No. It only reads the text you paste, in your browser.

    Work with me

    Want a site that gets these right?

    I build fast, accessible websites and web apps that pass these checks from day one. Tell me about your project and I'll reply personally with honest next steps.

    All developer tools · Back to leej.uk