{"id":51185756,"url":"https://github.com/hunkontech/git_revision_graph","last_synced_at":"2026-07-02T07:00:29.433Z","repository":{"id":367388589,"uuid":"1280513629","full_name":"HunKonTech/git_Revision_Graph","owner":"HunKonTech","description":"TortoiseSVN-style Git Revision Graph for VS Code \u0026 Visual Studio (2022/2026)","archived":false,"fork":false,"pushed_at":"2026-07-02T06:48:22.000Z","size":1171,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-02T07:00:15.498Z","etag":null,"topics":["dag-layout","git","git-tools","monorepo","revision-graph","tortoiseshell","version-control","visual-studio","visual-studio-code","visual-studio-extension","visualization","vscode"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HunKonTech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":["https://revolut.me/koncsi518t"]}},"created_at":"2026-06-25T16:56:09.000Z","updated_at":"2026-07-02T06:45:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"eafd7023-2109-4b44-94a5-4b90b17cdcf1","html_url":"https://github.com/HunKonTech/git_Revision_Graph","commit_stats":null,"previous_names":["hunkontech/vs_2026_git_revision_graph","hunkontech/git_revision_graph"],"tags_count":92,"template":false,"template_full_name":null,"purl":"pkg:github/HunKonTech/git_Revision_Graph","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HunKonTech%2Fgit_Revision_Graph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HunKonTech%2Fgit_Revision_Graph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HunKonTech%2Fgit_Revision_Graph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HunKonTech%2Fgit_Revision_Graph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HunKonTech","download_url":"https://codeload.github.com/HunKonTech/git_Revision_Graph/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HunKonTech%2Fgit_Revision_Graph/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35036553,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dag-layout","git","git-tools","monorepo","revision-graph","tortoiseshell","version-control","visual-studio","visual-studio-code","visual-studio-extension","visualization","vscode"],"created_at":"2026-06-27T10:00:54.765Z","updated_at":"2026-07-02T07:00:29.428Z","avatar_url":"https://github.com/HunKonTech.png","language":"TypeScript","funding_links":["https://revolut.me/koncsi518t"],"categories":[],"sub_categories":[],"readme":"# Git Revision Graph\n\nA **TortoiseSVN-style Revision Graph** for **Git**, for both **Visual Studio\n(2022 / 2026)** and **VS Code**. Commits, local \u0026 remote branches, and tags are\ndrawn as connected boxes; right-click a commit to **create a branch from it**\nusing the host's native Git.\n\n**▶ [Try the live demo](https://hunkontech.github.io/git_Revision_Graph/)** — runs the\nreal renderer in your browser with a sample repository; every action (create\nbranch, checkout, copy SHA, stash, zoom \u0026 pan) works against mock data.\n\n![Example](RevisionGraph.png)\n\n![VS Code / Visual Studio](RevisionGraph_vs_code.png)\n\n## What it does\n- Renders the git DAG as boxes-and-edges, with a column-per-branch layout.\n- Colors nodes by ref type: current/HEAD, local branch, remote branch, tag,\n  plain commit — echoing the SVN graph's grey/green/yellow scheme.\n- Shows **local and remote** branches and tags.\n- **Right-click → \"Create branch from here…\"** seeds a new branch at the clicked\n  commit via the host's native Git, then refreshes.\n- Checkout a commit, copy its SHA, zoom \u0026 pan.\n\n## How to open the graph\n\n### VS Code\n1. Open a folder or workspace that contains a Git repository.\n2. Either:\n   - Open the **Command Palette** (`Ctrl+Shift+P`) and run **\"Git Revision Graph: Open Revision Graph\"**, or\n   - Click the **graph icon** in the Source Control title bar (top-right of the SCM panel).\n\n### Visual Studio (2022 / 2026)\n1. Open a folder or solution that is inside a Git repository.\n2. Go to **View → Other Windows → Revision Graph**.\n\nRight-click any commit node to **create a branch from it** or to copy its SHA.\n\n## Architecture (monorepo)\nOne shared web renderer, embedded by two thin hosts:\n\n```\npackages/\n  protocol/      host \u003c-\u003e webview message contracts (single source of truth)\n  graph-core/    pure DAG lane/row layout algorithm (unit-tested, no DOM)\n  graph-webview/ the SVG renderer + context menu (builds to one bundle)\nvscode/          VS Code extension (TS): vscode.git data + native createBranch\nvs/              Visual Studio VSIX (C#): tool window + WebView2 host\n```\n\nThe `graph-webview` bundle is the shared artifact: VS Code loads it in a webview,\nthe C# VSIX loads the same files in WebView2. Branch creation uses the\n**native** Git of each host:\n- VS Code: `vscode.git` API `Repository.createBranch(name, checkout, ref)`.\n- Visual Studio: git CLI behind a themed dialog (native-dialog seeding is a\n  documented future enhancement).\n\n## Develop\n\n```bash\nnpm install\nnpm test                 # graph-core layout unit tests\nnpm run build            # build all packages + both host bundles\nnpm run harness          # browser dev harness with mock data -\u003e http://localhost:5599\n```\n\n### VS Code extension\n```bash\nnpm run build\n```\nThen open the repo in VS Code and press **F5** (Extension Development Host).\nRun **\"Git Revision Graph: Open Revision Graph\"** from the command palette, or\nuse the source-control title-bar button. Requires a workspace with a Git repo.\n\n### Visual Studio extension\nWindows-only (2022 / 2026). See [vs/BUILD.md](vs/BUILD.md) for complete prerequisites and build steps.\n\nQuick start:\n```bash\nnpm install\nnpm run build:webview\nnpm run build:vs-assets\n```\n\nThen open `vs/RevisionGraph.csproj` in Visual Studio (with the extension development workload installed), restore NuGet packages, and press **F5** to launch an experimental instance. Open a folder or solution inside a Git repo, then go to **View → Other Windows → Revision Graph** to open the tool window. Right-click a commit to create a branch from it using the native Git CLI.\n\n## Building the installers\n\n```bash\n# VS Code .vsix only (cross-platform)\nnpm run package:vscode      # -\u003e dist/installers/rev-graph-vscode-\u003cversion\u003e.vsix\n```\n\n```powershell\n# All three installers — Windows + Visual Studio + Node (run from repo root)\npwsh scripts/build-installers.ps1            # VS 2022 + VS 2026 VSIX + VS Code vsix\npwsh scripts/build-installers.ps1 -VSCodeOnly\npwsh scripts/build-installers.ps1 -SkipVSCode\n```\n\n- [scripts/package-vscode.mjs](scripts/package-vscode.mjs) — builds the shared\n  bundle and packages the VS Code extension via `@vscode/vsce`.\n- [scripts/build-installers.ps1](scripts/build-installers.ps1) — locates VS 2022\n  (`[17.0,18.0)`) and VS 2026 (`[18.0,19.0)`, prerelease) with `vswhere`, builds\n  the VSIX against each, and also packages the VS Code `.vsix`.\n\nAll outputs land in `dist/installers/`.\n\n## Status\n- ✅ `graph-core` layout + tests\n- ✅ shared SVG renderer + context menu (verified in browser harness)\n- ✅ VS Code extension (data layer verified against a real repo end-to-end)\n- ✅ Visual Studio VSIX authored (build \u0026 run on Windows per `vs/BUILD.md`)\n\n## License\n\n**[Business Source License 1.1](LICENSE)** — free for personal, internal, and non-commercial use. Selling, reselling, or offering the software as a paid product or service is not permitted. Converts to MPL 2.0 four years after each version's release.\n\n---\n\n# Git Revision Graph (Magyar)\n\nEgy **TortoiseSVN-stílusú revíziógraf** **Git**-hez, mind **Visual Studio (2022 / 2026)**, mind **VS Code** alatt. A commitok, helyi és távoli ágak, valamint tagek összekötött dobozokként jelennek meg; jobb klikkel egy commiton **új ágat hozhatsz létre belőle** a fogadó alkalmazás natív Git-jén keresztül.\n\n**▶ [Próbáld ki az élő demót](https://hunkontech.github.io/git_Revision_Graph/)** — a\nvalódi megjelenítő fut a böngésződben egy minta-repozitóriummal; minden funkció\n(ág létrehozása, checkout, SHA másolás, stash, nagyítás és mozgatás) működik a\nmock adatokon.\n\n![Example](RevisionGraph.png)\n\n![VS Code / Visual Studio](RevisionGraph_vs_code.png)\n\n## Mit csinál\n- A git DAG-ot dobozok és élek formájában rajzolja ki, áganként egy oszloppal.\n- A csomópontokat ref-típus szerint színezi: aktuális/HEAD, helyi ág, távoli ág, tag, sima commit — az SVN-gráf szürke/zöld/sárga sémájára emlékeztetve.\n- Megjeleníti a **helyi és távoli** ágakat és tageket.\n- **Jobb klikk → „Ág létrehozása innen…\"** — új ágat hoz létre a kiválasztott committól a fogadó alkalmazás natív Git-jén keresztül, majd frissíti a gráfot.\n- Commit közvetlen kivétele (checkout), SHA másolása, nagyítás és mozgatás.\n\n## A gráf megnyitása\n\n### VS Code\n1. Nyiss meg egy mappát vagy munkaterületet, amely egy Git repozitóriumot tartalmaz.\n2. Vagy:\n   - Nyisd meg a **Parancspalettát** (`Ctrl+Shift+P`) és futtasd a **\"Git Revision Graph: Open Revision Graph\"** parancsot, vagy\n   - Kattints a **gráf ikonra** a Forráskezelő panel fejlécében (jobb felső sarok).\n\n### Visual Studio (2022 / 2026)\n1. Nyiss meg egy mappát vagy megoldást, amely egy Git repozitóriumon belül van.\n2. Lépj a **Nézet → Egyéb ablakok → Revision Graph** menüpontba.\n\nJobb klikkel bármely commit csomóponton **új ágat hozhatsz létre**, vagy másolhatod a SHA-ját.\n\n## Architektúra (monorepo)\nEgy közös webes megjelenítő, amelyet két vékony hoszt foglal magában:\n\n```\npackages/\n  protocol/      hoszt \u003c-\u003e webview üzenetszerződések (egyetlen forrás)\n  graph-core/    tiszta DAG sáv/sor elrendező algoritmus (egységtesztelt, DOM nélkül)\n  graph-webview/ az SVG megjelenítő + helyi menü (egy bundle-lé épül)\nvscode/          VS Code bővítmény (TS): vscode.git adat + natív createBranch\nvs/              Visual Studio VSIX (C#): eszközablak + WebView2 hoszt\n```\n\nA `graph-webview` bundle a közös termék: a VS Code egy webview-ban tölti be, a C# VSIX ugyanezeket a fájlokat WebView2-ben. Az ág létrehozása az egyes hosztok **natív** Git-jét használja:\n- VS Code: `vscode.git` API `Repository.createBranch(name, checkout, ref)`.\n- Visual Studio: git CLI egy témázott párbeszédablak mögött.\n\n## Fejlesztés\n\n```bash\nnpm install\nnpm test                 # graph-core elrendező egységtesztek\nnpm run build            # minden csomag + mindkét hoszt bundle buildelése\nnpm run harness          # böngészős fejlesztői harness mock adatokkal -\u003e http://localhost:5599\n```\n\n### VS Code bővítmény\n```bash\nnpm run build\n```\nMajd nyisd meg a repót VS Code-ban és nyomj **F5**-öt (Extension Development Host).\nFuttasd a **\"Git Revision Graph: Open Revision Graph\"** parancsot a parancspalettáról, vagy használd a forráskezelő fejlécgombot. Git repót tartalmazó munkaterület szükséges.\n\n### Visual Studio bővítmény\nCsak Windows (2022 / 2026). Lásd [vs/BUILD.md](vs/BUILD.md) a teljes előfeltételekért és build lépésekért.\n\nGyors indítás:\n```bash\nnpm install\nnpm run build:webview\nnpm run build:vs-assets\n```\n\nMajd nyisd meg a `vs/RevisionGraph.csproj`-t Visual Studioban (a bővítményfejlesztési munkaterhelés telepítve legyen), állítsd vissza a NuGet csomagokat, és nyomj **F5**-öt egy kísérleti példány indításához. Nyiss meg egy Git repón belüli mappát vagy megoldást, majd lépj a **Nézet → Egyéb ablakok → Revision Graph** menüpontba.\n\n## Telepítők buildelése\n\n```bash\n# Csak VS Code .vsix (cross-platform)\nnpm run package:vscode      # -\u003e dist/installers/rev-graph-vscode-\u003cverzió\u003e.vsix\n```\n\n```powershell\n# Mindhárom telepítő — Windows + Visual Studio + Node (a repo gyökeréből futtatva)\npwsh scripts/build-installers.ps1            # VS 2022 + VS 2026 VSIX + VS Code vsix\npwsh scripts/build-installers.ps1 -VSCodeOnly\npwsh scripts/build-installers.ps1 -SkipVSCode\n```\n\nMinden kimenet a `dist/installers/` mappába kerül.\n\n## Állapot\n- ✅ `graph-core` elrendező + tesztek\n- ✅ közös SVG megjelenítő + helyi menü (böngészős harness-ben ellenőrizve)\n- ✅ VS Code bővítmény (adatréteg valós repón végigvizsgálva)\n- ✅ Visual Studio VSIX elkészítve (build \u0026 futtatás Windows alatt a `vs/BUILD.md` szerint)\n\n## Licenc\n\n**[Business Source License 1.1](LICENSE)** — személyes, belső és nem-kereskedelmi célú használatra ingyenes. A szoftver eladása, továbbértékesítése, vagy fizetős termékként/szolgáltatásként történő kínálása nem megengedett. Verziónként a megjelenéstől számított négy év után MPL 2.0 licencre vált.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhunkontech%2Fgit_revision_graph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhunkontech%2Fgit_revision_graph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhunkontech%2Fgit_revision_graph/lists"}