← New search

Other meanings of Tortoise (band)

Software

TortoiseGit

TortoiseGit is a free, open-source Windows shell extension that provides a graphical user interface for the Git version control system, integrating directly into Windows Explorer. It allows users to manage repositories, commit changes, and browse history without using a command line, making Git more accessible to non-programmers and visual learners. Developed as a fork of TortoiseSVN, it mirrors the familiar Tortoise family of tools while adapting to Git's distributed model.

2008
Initial release
First public version
GPL
License
GNU General Public License
C++
Primary language
Written in C++
Windows
Platform
Microsoft Windows only
1

Overview and features

TortoiseGit provides a comprehensive set of Git operations through context menus in Windows Explorer, including commit, pull, push, merge, rebase, and branch management. It displays overlay icons on files and folders to indicate their status (e.g., modified, added, conflicted), and includes a powerful log dialog for visualizing commit history and branches. The tool also offers a built-in diff viewer for comparing changes, and supports submodules and subtrees. Unlike command-line Git, TortoiseGit is designed for users who prefer a point-and-click interface, and it can be used alongside other Git GUIs or the command line.

2

History and development

TortoiseGit was created in 2008 by a team led by Sven Strickroth, who also contributed to TortoiseSVN. The project was initiated to bring the same usability of TortoiseSVN to Git, which was gaining popularity at the time. It is developed on SourceForge and GitHub, with contributions from a global community. The software is released under the GNU General Public License (GPL), ensuring it remains free. Over the years, it has evolved to support newer Git features, such as partial cloning and LFS (Large File Storage), and it continues to receive regular updates. The project maintains a wiki and issue tracker for user support.

3

Lesser-known aspects

Beyond its core functions, TortoiseGit includes several lesser-known utilities. The 'Revision Graph' provides a visual representation of branches and merges, which is particularly useful for complex histories. It also supports 'Cherry Pick' and 'Revert' operations directly from the log dialog. A notable feature is the ability to create and apply patch files, facilitating code review without direct repository access. TortoiseGit also integrates with issue trackers, allowing commit messages to reference issues and automatically close them. For advanced users, it offers a 'Settings' dialog with extensive customization, including the ability to define custom diff tools. The project also provides a command-line helper tool, 'TortoiseGitProc', for scripting, though it is not widely documented.

4

Comparison and ecosystem

TortoiseGit is often compared to other Git GUIs such as GitKraken, SourceTree, and the built-in Git for Windows. Its main advantage is deep Windows integration and a lightweight footprint, as it does not require a separate application window. However, it lacks cross-platform support, being Windows-only, and some users find its interface dated compared to modern alternatives. TortoiseGit is part of the broader Tortoise family, which includes TortoiseSVN and TortoiseHg, and it shares similar design principles. It is widely used in corporate environments and by individual developers who prefer Explorer-based workflows. The project's documentation is extensive, and it is considered a stable, mature tool in the Git ecosystem.

Glossary

Shell extension
A software component that integrates with the Windows Explorer interface, adding context menu items and icons.
Git
A distributed version control system for tracking changes in source code during software development.
Overlay icons
Small icons displayed on file and folder icons to indicate their version control status.
Submodule
A repository embedded within another repository, allowing for nested version control.
LFS (Large File Storage)
An extension for Git that handles large files by storing them outside the repository.

TortoiseGit is a registered trademark of its respective owners. All other trademarks are property of their holders.