Git History Visualizer

Git History Visualizer

Local commit graph analysis only · no Git execution or repository access.

1. Import commit history

Paste tab-separated lines: commit ID TAB parent IDs separated by spaces TAB subject. Export example: git log --all --pretty=format:%H%x09%P%x09%s. JSON commit arrays also work.

Paste or import a commit history.

Comments & questions

Git History Visualizer

Export a commit list from Git and paste it here to see the parent graph. Choose two commits to find their best common ancestors and the shortest paths back through each parent chain. Missing parents in partial exports and disconnected histories are shown explicitly. This browser tool does not read your repository or execute Git.

Key features

  • Parse full commit-parent-subject TSV from git log or a JSON commit array
  • Validate IDs, merge parents, duplicate rows and cycles; identify missing parents in partial exports
  • Draw every known parent edge and keep disconnected components visibly separate
  • Compare any two commits, including merges with multiple best common ancestors
  • Download the graph as SVG and a structured analysis report as JSON

How to use

  1. Run the documented git log export in your own terminal, paste its output, or load the example.
  2. Analyze the data; resolve errors such as duplicate IDs or cycles.
  3. Choose two commits to compare and inspect best common ancestors and parent paths.
  4. Scroll the graph and use the full commit table for exact IDs and subjects.
  5. Download SVG or JSON if you need to share the reviewed result.

Use cases

  • Explain where a feature branch diverged before a merge
  • Inspect merge commits with both parents instead of only first-parent history
  • Detect disconnected imported histories or missing parent rows in a limited log export

Frequently asked questions

What text format should I paste?

Use three tab-separated columns per line: full commit ID, space-separated parent IDs, subject. For example, git log --all --pretty=format:%H%x09%P%x09%s. JSON can be an array or {"commits":[{"id":"...","parents":["..."],"subject":"..."}]}.

Does the tool connect to my repository?

No. It only analyzes pasted or locally selected text. Run any git log export yourself in your terminal; this page does not execute Git.

What is a best common ancestor?

A commit reachable through parent links from both selections for which there is no newer common descendant in the supplied graph. Criss-cross merges can produce several best ancestors.

What if parents are missing from the export?

Missing parent IDs are reported as boundary references. Comparisons use only supplied commits, so a partial export can hide a real common ancestor.

Are disconnected histories errors?

No. Unrelated roots form separate components. A comparison across them reports no common ancestor in the supplied data.

What are the limits?

The input is limited to 256 KiB and 150 commits; each commit can list up to 8 parents. IDs must have 7–64 hex characters and match parent IDs exactly. This is a local visual analysis, not Git’s full repository object database.

Privacy

Pasted history and imported files are processed in your browser memory. No repository is opened and no Git command or network request runs. Downloaded SVG and JSON include commit IDs and subjects; review them before sharing.

Related Tools

.gitignore GeneratorData Lineage DesignerDecision Tree LabWasm Module InspectorHreflang Matrix CheckerAST Query PlaygroundContainer Build GraphDependency Graph ExplorerSemver Range LabCron Schedule AuditorPatch Review WorkbenchSource Map ExplorerLocalization Catalog AuditorStructured Data ReviewerHTTP Archive AnalyzerWebhook Signature LabProtobuf Schema WorkbenchGraphQL Schema LabAvro Schema EvolutionLocal SQL WorkbenchSchema Form BuilderMesh Repair WorkbenchPipe Network LabRobot Arm Kinematics LabThermal Network LabBeam Response LabGear Train DesignerTolerance Stackup LabSensor Calibration FitPCB Stackup PlannerDigital Filter DesignerNetwork Reachability MapSun Shadow MapGPS Error SimulatorDigital Logic SimulatorAnalog Circuit LabMechanism Linkage LabAnalysis Mesh GeneratorOpenAPI Contract InspectorDatabase Migration PlannerDimensional Equation CheckerTruss Force LabBoolean Minimization LabControl Response LabQueueing Simulation LabGeofence Event SimulatorCoordinate Reference LabSurvey Traverse LabRaster Classification LabChoropleth Design LabMap Print ComposerRaster Reprojection LabElevation Contour MakerTerrain Viewshed LabWatershed DelineatorMap Tile PackagerText File Encoding WorkbenchFilesystem Portability AuditorSBOM License ExplorerFile Signature Auditornpm Lockfile Conflict ResolverSource Secret AuditorOffline Web Package BuilderCertificate Chain InspectorTorrent Metainfo InspectorChunked File PackagerEncrypted File VaultDuplicate File FinderArchive WorkbenchDesign Token ManagerSpacing Token DesignerResponsive Type SystemPackaging Dieline DesignerSVG Icon Sprite PackerFlex Layout PlaygroundCSS Grid PlaygroundRegex Equivalence LabMarkdown Repository AuditorLog Template MinerResponsive Layout AuditorEmail Template PreviewInternal Link GraphState Machine TesterPetri Net SimulatorCurl Request WorkbenchBinary Protocol DesignerHex File EditorBinary Patch WorkbenchFile Signature WorkbenchAPI Mock SandboxSchema Column MapperEvent Log SessionizerER Diagram DesignerTime Series Gap AuditorStratified Data SplitterData Anonymization WorkbenchData Expectation RunnerJSON Schema ValidatorBasket Pattern AnalyzerRobots Policy TesterSEO HTML AuditorAccessibility Structure AuditorSyndication Feed WorkbenchIndexNow Payload BuilderCrawl Log AnalyzerCSP Policy WorkbenchSearch Performance AnalyzerCSV Formula Risk AuditorCORS Response SimulatorCache Header LabCookie Policy InspectorWeb Vitals Trace LabSitemap Health AuditorBatch File RenamerFile Manifest VerifierFolder Space MapFolder Difference ReviewerRoute Order OptimizerGeoJSON Map EditorPolygon Overlay LabCartographic Label PlacerSpatial Table JoinGeoJSON Topology AuditorGPX Track AnalyzerTrack Privacy RedactorCSV Table JoinCSV Pivot WorkbenchScientific Data ProfilerTabular Cleaning WorkbenchRecord ReconciliationData Dictionary BuilderCanonical Graph AuditorRedirect Plan TesterHTTP response and ping reference testBrowser and System InformationJSON ↔ YAML ConverterXML ↔ JSON ConverterHTML FormatterJavaScript MinifierMock Data GeneratorLicense GeneratorUser-Agent ParserPassword Strength CheckerCode to ImageXML FormatterHTTP Status Code LookupMIME Type LookupJS & SQL String EscapeCSS Box Shadow GeneratorCSS Gradient GeneratorIndent ConverterNumber Base ConverterUnicode Escape ConverterUnicode InspectorJSON Structure DiffMarkdown Table GeneratorBase64 EncoderJSON FormatterURL EncoderSQL FormatterCron Expression GeneratorRegex TesterUUID GeneratorHash GeneratorTimestamp ConverterJWT DecoderHTML Entity ConverterMarkdown PreviewCSS MinifierMeta Tag GeneratorJSON ↔ CSVCase ConverterImage to Base64
Explore all Dev Tools tools →Image/Media →Text/Convert →Life/Fun →