For git branching tools, the strongest matches are jesseduffield/lazygit (Lazygit provides a keyboard-driven terminal interface for branch visualization), gitbutlerapp/gitbutler (GitButler is a cross-platform desktop application that provides visual) and petervanderdoes/gitflow-avh (This command-line extension automates the Gitflow branching model and). sourcegit-scm/sourcegit and gitextensions/gitextensions round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked open-source Git branching tools ranked by stars and activity. Compare features and find the right one for your workflow.
Lazygit is a terminal-based user interface designed to simplify version control operations through a keyboard-driven workflow. It functions as a visual abstraction layer that bridges native commands with an interactive environment, allowing users to manage repository history, branches, and commit workflows without relying solely on manual command-line input. The tool distinguishes itself by automating complex version control tasks that typically require multiple manual steps. It provides specialized interfaces for interactive rebasing, commit history amendment, and binary search-based regress
Lazygit provides a keyboard-driven terminal interface for branch visualization, interactive rebasing, and commit workflows, matching the core intent despite lacking a graphical desktop GUI.
GitButler is a desktop application designed for managing Git version control workflows. It provides a visual interface for organizing concurrent development tasks, allowing users to work on multiple features or bug fixes simultaneously within a single repository without the need for manual context switching. The application utilizes a virtual file system overlay and in-memory staging to track granular file modifications independently of the underlying version control system. It features a conflict isolation engine that breaks down complex merge conflicts into smaller, manageable segments, and
GitButler is a cross-platform desktop application that provides visual branch management, concurrent task organization, and a conflict isolation engine for handling Git workflows.
gitflow-avh is a command line tool and automation framework designed to implement the Gitflow branching model. It provides a set of extensions that automate the creation, merging, and management of feature, release, and hotfix branches to maintain a standardized version control workflow. The tool manages the complete lifecycle of development, from initializing a repository with predefined branch structures and naming prefixes to preparing stable software versions for production. It includes specialized workflows for urgent production hotfixing and the creation of persistent branches for long-
This command-line extension automates the Gitflow branching model and workflow for your repositories, covering the required workflow automation and command line interface features while lacking a visual GUI.
SourceGit is a cross-platform desktop Git GUI client and version control tool compatible with Windows, macOS, and Linux. It provides a graphical user interface for cloning, merging, and analyzing code changes, acting as a visual manager for Git repositories. The application includes an AI-powered commit generator to draft standardized commit messages and a pull request manager to initiate and manage merges across supported hosting services via web APIs. The software covers broad version control capabilities, including advanced operations such as interactive rebasing, cherry-picking, and subm
SourceGit is a cross-platform desktop Git GUI client that provides branch visualization, interactive rebasing, and repository management, fitting the requested category well despite lacking dedicated workflow automation features.
GitExtensions is a graphical user interface client for managing Git repositories. It provides a suite of visual tools for browsing commit logs, staging changes, and tracking file evolution across a project's history. The project features a commit visualizer that maps branch and merge relationships via a graphical map and a dedicated history manager for performing interactive rebases and squashing commits. It includes a visual merge conflict resolver to identify and fix overlapping code changes during merges or history rewrites. The software covers broad version control capabilities, includin
GitExtensions is a cross-platform desktop GUI client for managing Git repositories with a visual commit map, history management for interactive rebases, and a conflict resolver, fitting the visitor's core workflow needs well.
Git Machete is a command-line tool designed to organize, visualize, and automate complex branch hierarchies within Git repositories. It models local branch relationships as a tree structure, allowing developers to manage parent-child dependencies and maintain a clear overview of feature development directly from the terminal. The tool distinguishes itself by using a keyboard-driven interface to provide a visual representation of branch states, enabling rapid navigation and interaction with repository history. It stores branch dependency metadata within local configuration files and automates
Git Machete is a command-line tool that organizes, visualizes, and automates branch hierarchies, fitting the search well despite lacking a cross-platform desktop GUI.
git-extras is a collection of command line utilities that extend the functionality of the Git version control system. It provides a suite of shortcuts and additional commands for history manipulation, remote management, repository analysis, and workflow automation. The project distinguishes itself by offering deep integration with hosting providers to manage pull requests and forks, alongside advanced history tools for obliterating sensitive files and rewriting author metadata. It also includes a specialized interactive shell that allows users to execute commands without repeating the binary
This collection of command-line utilities provides workflow automation and repository analysis for Git, though it lacks a visual GUI client or graphical branch visualization.
Gitflow is a Git branching model extension and workflow automation tool. It provides a set of command line tools and automated scripts to manage feature development, release cycles, and hotfixes using standard Git operations. The project coordinates software releases and versioning through the management of dedicated release and support branches. It automates the creation and merging of branches to maintain a structured development cycle and manage the transition of code from development to production. The tool covers the full lifecycle of several branch types, including the isolation of new
Gitflow is a command-line extension and workflow automation tool for managing structured branching models, though it lacks the graphical visualization and interactive rebase features requested.
forgit is a shell-based interactive CLI wrapper that uses a fuzzy finder to transform Git output into selection menus. It functions as a workflow accelerator and history browser, replacing manual command entry with searchable interfaces for version control operations. The tool provides specialized managers for Git worktrees and an interactive history browser for visualizing commit logs, reflogs, and blame data. It differentiates itself by wrapping native Git subcommands in selection logic, allowing users to pick targets before executing final operations. Its capabilities cover interactive fi
This repository provides a shell-based interactive CLI wrapper with fuzzy finder integration for branch management, history browsing, and rebase operations, offering a command-line-driven alternative to desktop GUI clients.
GitUp is a graphical user interface client and version control tool for managing Git repositories. It provides a visual environment for browsing repository content, editing history, and performing version control operations. The application features an interactive commit graph visualizer for navigating branching and merging history. It includes a dedicated history editor that allows for the visual manipulation of the project timeline, including the ability to reorder, split, and roll back commits. The tool covers diff analysis through side-by-side file comparisons and high-speed content sear
GitUp is a cross-platform graphical Git client focused on visual history editing and interactive graph visualization, fitting the category well despite missing command-line and workflow automation features.
Sapling is a scalable version control system designed to handle repositories with millions of files and commits, making it suitable for large monorepos. It reads and writes Git repositories natively, maintaining full interoperability with Git remotes and standard workflows, and provides an interactive commit graph for exploring repository history and state. The system uses a bookmark-based branching model that eliminates named branches in favor of lightweight, movable labels for commits. It tracks how each commit was created, amended, rebased, or split through commit-graph-based mutation trac
Sapling is a scalable version control system and client that integrates with Git repositories, providing a graphical commit graph and stacked workflow features for branch management.
git-branchless is a suite of tools for organizing changes as a sequence of individual commits instead of traditional branches. It functions as a stacked commit manager, history manipulation tool, and repository state auditor, designed to facilitate a branchless development workflow. The system distinguishes itself through in-memory graph manipulation, allowing for the rebasing, splitting, and moving of complex commit subtrees without checking out the working copy. It includes a commit graph visualizer that renders hidden references and abandoned nodes, alongside a local database that logs rep
It is a powerful command-line tool for managing stacked commits and visualizing complex repository histories, though it lacks a desktop GUI client.
Magit is a complete Git interface that runs inside Emacs, providing a full-featured porcelain for version control operations without leaving the editor. It renders repository state as structured, collapsible sections within Emacs buffers, and manages Git command execution through a transactional process model with automatic buffer refresh and error handling. The interface exposes all configuration through Emacs' standard customization system and uses a transient command framework for context-sensitive menu-driven Git operations. What distinguishes Magit is its granular control over every stag
Magit is a comprehensive, text-based Git interface that runs inside Emacs with interactive rebase editing and branch visualization, though it is scoped to an Emacs plugin rather than a standalone desktop GUI or separate command-line utility.
Gitui is a terminal user interface and repository manager built with Rust. It provides a keyboard-driven visual environment for performing version control operations without the need to type manual command line arguments. The application enables the management of Git branches, commits, and remote synchronization, alongside capabilities for stashing temporary work and managing submodules. It includes support for GPG commit signing to verify identity through cryptographic signatures. Users can customize the experience through keyboard shortcut rebinding and visual theme adjustments. The interf
Gitui is a terminal user interface for managing Git repositories that provides branch visualization and commit handling, though it lacks an interactive graphical desktop interface or dedicated workflow automation features.
Tig is a terminal-based interface for version control systems that functions as an interactive visual layer over standard command-line operations. It provides a text-based environment for navigating commit history, managing staging areas, and inspecting file changes directly within the terminal. By utilizing a split-view layout, the application allows users to view logs, diffs, and status information simultaneously for efficient code analysis. The tool distinguishes itself through a state-driven navigation model that processes piped output from version control utilities into structured, color
Tig is a terminal-based text interface and repository browser that provides interactive branch visualization and commit history navigation, though it lacks a desktop GUI and dedicated interactive rebase workflows.
git-cola: The highly caffeinated Git GUI
Git-cola is a cross-platform desktop GUI for Git that provides branch visualization and tools like rebase support, making it a solid fit for managing workflows visually even though it lacks a command-line interface or built-in workflow automation.
git-extras is a collection of command line extensions for Git that provide utilities for managing repositories, analyzing commit history, and automating version control workflows. The suite includes tools for generating automated changelogs from commit history and utilities for identifying and cleaning up merged or stale branches. The project provides a set of analysis tools to quantify project contributions by calculating commit percentages and author metrics. It further includes capabilities for summarizing repository metadata and state to optimize routine inspections. The toolset is imple
This collection of command-line extensions provides helpful utilities for managing and cleaning up Git branches and automating workflows, though it lacks the visual GUI clients requested.
Git branches made easy
Git Town provides command-line utilities that automate complex Git branch workflows and synchronization, making it a strong tool for managing branching strategies even though it lacks a visual desktop GUI or interactive rebase features.
Native cross-platform full feature terminal-based sequence editor for git interactive rebase.
This terminal-based tool specifically simplifies interactive rebases with a native cross-platform interface, though it focuses narrowly on that one workflow rather than general branch visualization or GUI management.
GitUI is a terminal-based interface for managing Git repositories, providing an interactive environment for executing version control operations, inspecting commit logs, and navigating file hierarchies. It functions as a keyboard-driven client that allows users to stage changes, manage branches, and review project history directly from the command line. The application distinguishes itself through a focus on interface responsiveness and user-defined workflows. It utilizes background thread offloading and asynchronous data caching to maintain performance during complex operations, while offeri
GitUI is a fast, terminal-based Git client that handles branch navigation, commit inspection, and repository operations with keyboard-driven workflows, though it lacks a desktop GUI.
| المستودع | النجوم | اللغة | الترخيص | آخر تحديث |
|---|---|---|---|---|
| jesseduffield/lazygit | 79.3K | Go | MIT | |
| gitbutlerapp/gitbutler | 19.5K | Rust | other | |
| petervanderdoes/gitflow-avh | 5.5K | Shell | NOASSERTION | |
| sourcegit-scm/sourcegit | 5.4K | C# | MIT | |
| gitextensions/gitextensions | 8.4K | C# | other | |
| virtuslab/git-machete | 1.1K | Python | MIT | |
| tj/git-extras | 18.1K | Shell | MIT | |
| nvie/gitflow | 26.8K | Shell | NOASSERTION | |
| wfxr/forgit | 5K | Shell | MIT | |
| git-up/gitup | 12K | Objective-C | GPL-3.0 |