Skip to content
BaeTabPublic

About

Git Tab — open-source Windows Git client with a GitKraken-style color commit graph. WPF · .NET 8 · LibGit2Sharp + git CLI. 한/영 지원.

Topics

Resources

Contributing

Stars

5 stars

Watchers

0 watching

Forks

Repository files navigation

Git Tab — the friendly, open-source Git client for Windows

Git Tab

A modern Windows Git client with a color-coded commit graph, built in .NET 8 & WPF.

English | 한국어


⚠️ On v1.4.1 or earlier? A one-time manual update is required

Those builds have an auto-updater bug (it locked the downloaded installer while verifying it), so in-app updates fail with "Couldn't check for updates." Fixed in v1.4.2 — but since the fix ships in the new version, please download the latest installer manually once. Auto-update works normally afterward.

v1.4.1 이하 사용자는 이번 한 번만 수동 업데이트가 필요합니다. (자동 업데이터 버그로 인앱 업데이트가 "업데이트를 확인하지 못했어요"로 실패 → v1.4.2에서 수정. 최신 설치본 직접 내려받기)


English

Build Status License: MIT .NET 8

What is Git Tab?

Git Tab is a native Windows Git client that brings the power of visual branch management to your fingertips. Like GitKraken and SourceTree, Git Tab renders commits as an interactive, color-coded graph where branches "braid" together—making it easy to understand your repository's history at a glance. Built entirely in C# with WPF, Git Tab is lightweight, fast, and deeply integrated with Windows.

📖 New to Git? The beginner-friendly Wiki walks you through installation, Git basics, authentication, and every feature in plain language.

Features

  • Color Commit Graph — Branches get distinct colors; commits line up in a virtualized, interactive graph that handles tens of thousands of commits without lag.
  • Commit Details & Diff — Message, author, date, changed files, and a colored unified or side-by-side diff (AvalonEdit) with word-level highlighting of the exact words that changed.
  • Diff moved-code detection — blocks of code deleted in one place and re-added elsewhere now highlight as moved (blue/violet) instead of plain red/green, like git's color-moved.
  • Open diff in its own window — pop-out diffs to a resizable window with F11 fullscreen support.
  • Staging & Commit — Stage/unstage/discard individual files and commit (or amend) from the UI.
  • Automatic refresh — Git Tab watches the repository on disk: saving a file in your editor updates the changes list, and a commit or checkout made in a terminal reloads the history. No F5.
  • Pre-commit check (Repo Doctor) — warns before a commit lands when the staged content looks like a credential (AWS keys, GitHub/GitLab tokens, private keys, JWTs), is large enough to bloat the repository, or is a path that is normally local-only (.env, *.pem, node_modules/). It warns and lists what it found — it never blocks the commit.
  • Merge conflict prediction — before merging, Git Tab says whether the merge fast-forwards, applies cleanly, or conflicts, and in which files. The prediction runs in memory, so there is no half-finished merge to abort.
  • Branches & Tags — Checkout, create, delete, rename, merge, rebase; create/delete/push tags; delete remote branches.
  • Interactive Rebase — Reorder, squash, fixup, or drop commits with a visual planner.
  • Reword & Bisect — Rewrite any commit's message, and binary-search for a bad commit (Good / Bad / Skip) right from the graph.
  • Signing — GPG/SSH-sign commits and tags, with a verified-signature badge in commit details.
  • Power tools — Worktrees, Git LFS, richer submodules, patch import/export, line-level staging, sparse checkout + blobless clone, and a saved-credentials manager — all in one overflow menu.
  • Multiple repository tabs — open several repos and switch between them; folder-grouped file lists, image diffs, clickable #123/URLs in messages, an ignore-whitespace toggle, and merged-branch pruning.
  • Hosting integration — browse open pull requests/issues in-app and post/view comments for GitHub and GitLab, see a commit's CI status, and open the repo or a file in VS Code / an external diff tool.
  • Convenience & management — force-push (with lease), sign-off & co-author trailers, edit commit author, restore a file to an old version, a repository-statistics dashboard, a Git config editor, and "add to .gitignore".
  • More productivity — expand/collapse diff context, generate a CHANGELOG from Conventional Commits, bookmark commits, and browse changed files as a folder tree.
  • History & Undo — Browse HEAD's reflog and restore to any point; one-click "undo last action".
  • Partial Staging — Stage individual hunks of a file (the GUI equivalent of git add -p).
  • Visual 3-Way Merge — Resolve conflicts with base / ours / theirs panes and an editable result.
  • Create / Clone / Remotes — git init a new repo, clone from a URL, and manage remotes.
  • File History — the commits that touched a file, with the diff at each.
  • Compare — diff two branches, tags, or commits.
  • Content Search (pickaxe) — find where a string was added or removed in the code.
  • Command Palette — Ctrl+P for quick access to every action.
  • GitHub/GitLab — One-click "New PR" (opens the pre-filled Pull/Merge Request page) and "Open on web".
  • Commit Helper — A Conventional-Commits type dropdown for consistent messages.
  • Stash — Stash your changes and apply/pop/drop them later.
  • Blame — See which commit last changed each line of a file.
  • Conflict Handling — An in-progress banner with Abort/Continue; resolve by staging files. The 3-way resolver lists every conflicting region of a file so you can pick ours / theirs / both for each one independently.
  • Remotes — Fetch, pull, push with ahead/behind tracking; long network operations are cancellable.
  • GUI Authentication — Push/pull to private HTTPS remotes with no console setup: enter a username + Personal Access Token once in a dialog, stored securely in Windows Credential Manager and reused automatically.
  • Windows Explorer Integration — TortoiseGit-style right-click menu (Open / Clone / Commit / Pull / Push / Fetch / Stash / History) on any folder. Pull/Push/Fetch/Commit/Stash open in a dedicated dialog (no need to open the full app); Open/Clone/History launch the main window. Toggle it from Settings (no admin needed).
  • Bundled Git — The installer ships portable Git, so Git Tab is a true all-in-one tool that works even without Git installed separately.
  • Submodules — One-click submodule update --init --recursive.
  • .gitignore Generator — Detects your stack (.NET, Node, Python, Java, Rust, Go, Flutter, Unity…) and generates a matching file.
  • Right-click Context Menus — In-app TortoiseGit-style menus on commits, branches, and files.
  • Commit Search — Filter by message, author, or hash in real time.
  • Light & Dark Themes + 5 UI Languages — Korean, English, Japanese, Chinese (Simplified), Spanish; toggle at runtime, remembered across restarts; beginner-friendly tooltips explain every Git action.
  • Accessibility — High-contrast theme and UI/text zoom (100–150%) in Settings.
  • Customizable Keyboard Shortcuts — Rebind any shortcut with live key-chord capture, conflict detection, and reset-to-default; includes F5/Ctrl+R refresh, Ctrl+O open, Ctrl+Enter commit.
  • Auto-Update — Checks GitHub Releases and installs new versions in one click; opt in to a beta channel for pre-release builds in Settings.

Screenshots