git-cola is a graphical Git client built around a highly flexible staging workflow. Its interface gives direct access to the index, modified files, diffs and commit message without hiding the underlying Git concepts.
The application is particularly useful when preparing carefully structured commits. Individual files or selected portions of a diff can be staged, unstaged or reverted, while additional tools cover repository history and more involved operations such as rebasing and cherry-picking.
This is free and open source software.
Key Features
- Stages and unstages complete files, individual hunks and selected diff regions.
- Provides detailed diff views with actions for reverting selected changes.
- Searches and browses repository history with integrated history tools.
- Includes git-dag for visualising commit relationships and branches.
- Supports merging, rebasing, cherry-picking and amending commits.
- Manages stashes and can create or apply patches.
- Integrates external diff and merge tools where preferred.
- Offers extensive keyboard shortcuts and customisable interface layouts.
Website: git-cola.github.io
Support:
Developer: David Aguilar and contributors
License: GNU General Public License v2.0

git-cola is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| GUI Git Clients | |
|---|---|
| Gittyup | Fast Qt client and continuation of GitAhead |
| Git Cola | Powerful Python and Qt client focused on staging workflows |
| SourceGit | Feature-rich cross-platform Git GUI |
| Gitnuro | Multiplatform Git client written in Kotlin |
| GitFourchette | Comfortable Qt Git interface with precise staging tools |
| GitQlient | Qt client with hunk staging, rebase and forge integration |
| RelaGit | Modern and extensible graphical Git client |
| MeGit | Standalone desktop client based on EGit |
| gitg | Streamlined Git client for the GNOME desktop |
| Stage | Keyboard-friendly Git GUI inspired by Magit |
| Kommit | KDE client designed for everyday version control work |
| Guitar | Fast Qt-based Git GUI with extensive repository tools |
| GitPulsar | Lightweight native Git client for GNOME |
| GitForce | C# Git frontend with multi-repository workspaces |
| Desktop Plus | Enhanced GitHub Desktop fork with Linux support |
| Gitember | Cross-platform Java Git GUI with advanced tooling |
| Gitte | Native GNOME Git client with history editing |
| gitonic | Tkinter client for managing multi-repository workspaces |
| QGit | Qt/C++ history viewer and graphical Git client |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.