
The purpose of Git is to manage a project, or a set of files, as they change over time. Git stores this information in a data structure called a repository. TortoiseGit is an open source Git control client, that was built to provide the tools to better manage the source code. It isn't integrated into a specific IDE, so the only way to interact with the program is by using the context menu of the Windows Explorer.
Like I mentioned earlier, the program commands are available directly from Windows Explorer and are personalized for every specific action, so it will only display commands that are available for the selected file or folder.
It has a powerful commit dialog that automatically offers suggestions for paths or keywords, special text formatting characters, and a built-in spell checker. Moreover, this Git client comes with an integrated web-based bug tracking system and other helpful tools, such as GitMerge - for resolving conflicts, or showing changes made to files - or GitBlame, which shows blames of files.
In conclusion, TortoiseGit is a decent Git client, is available in various languages and it impresses through its stability. The only downsides I encountered are an issue with the overriding git status file icons by the cloud provider and the poorly integrated selection of files in a subdirectory.
v2.9 [Nov 5, 2019]
Changes:
- Support for Thesaurus was dropped.
- Thin-Pack option was dropped from fetch/pull dialog (enabled by default in Git).
Features:
- Fixed issue #3355: Adding file name extension in the Export dialog.
- Update Scintilla to 4.2.0.
- Update libgit to 2.22.0 based on Git for Windows sources.
- Update TortoiseGitPLink to PuTTY PLink 0.73 (security fix, cf. https://www.chiark.greenend.org.uk/~sgtatham/putty/changes.html).
- Update PuTTY binaries to 0.72.
- Allow to disable "Working Tree Changes" in log dialog (using advanced settings).
- Update Hunspell to 1.7.0.
- Fixed issue #3363: Add option to show unlabeled most recent common ancestor between all branches in Revision Graph.
- Fixed issue #3379: Super-project-pointer should show in revision graph of submodule.
- Fixed issue #3421: Option to show Log IDs instead of SHA-1 in TortoiseGitBlame.
- Fixed issue #3343: Provide a confirm dialog instead of executing the revert operation directly.
- Ref Browse: Show date and author of annotated tag as well.
- Show whitespaces in patch views.
- Fixed issue #3414: Allow users to not display all tags on revision graph.
- Add find functionality to revision graph.
- Fixed issue #3427: FileDiffDlg: Provide a way to view the diff for a pull request branch (in diff options).
- Fixed issue #3440: (GUI) Animation should stop when finished, not halt.
- Fixed issue #3395: TortoiseGit now uses the Windows "Default Application" framework for managing file associations and protocol handlers.
- Fixed issue #3436: Please document rolling back a file to a previous revision in Undo Changes.
Bug Fixes:
- Implement generic fix for "libgit2 returned the requested type does not match the type in ODB".
- Fixed issue #3342: Windows Explorer context menu: TortoiseGit doesn't recognize local Git working copy if "gitdir-redirection" is used within same folder.
- Fixed issue #3349: View patch missing color.
- Fixed issue #3365: Ignore items by extension handles files/directories with no extension poorly.
- Fixed issue #3393: TortoiseGitIDiff crashes with a very small window size.
- Fixed issue #3397: Create Repository make a useless symlink on Windows 10.
- Fixed issue #3413: Putty Agent (pageant) unable to start when file "C:\Program" exists.
- Fixed issue #3429: Optimize progress output with multiple git commands.
- Fixed issue #3434: Commit dialog's "View Patch>>" shows nothing when dialog's right border is on the screen's right border.
- Fix potential crashes in TortoiseGitBlame when .mailmap support was enabled.
- Fix potential crash when log is still calculating diffs and rebase dialog loads.
- Prevent possible crash after rebase when writing to reflog fails.
- Fixed issue #3426: Ref Browse: Speed up display when having thousands of refs.
- TortoiseGitMerge: When ignoring comments in TMerge, ignore comment block markers inside strings.
- Fix start commit hook not working for repository hooks.
- Fix potential crashes when log is still loading and submodule diff is requested.