Which Git GUI is the best?
In my opinion Source Tree is the best one right now with Fork being a close second. Though I try to mostly use the terminal in Git Bash since it is much faster. I use Source Tree to get a bigger overview and the ability to discard changes easier. Source Tree is the fastest and most useful Git GUI right now, imo.
I tried Github Desktop for Windows. It was pretty useless for me. You can not edit individual lines in the GUI, that is to say you can not discard specific lines in the editor. There were some other problems I don't remember but I know that it is the worst of the ones I have tried here.
I have also tried Visual Studio "Team Explorer" and it is the same problem there; you can not discard individual lines, only the entire file.
I have switched over to Source Tree again. Fork has become really slow in comparison. Source tree also has dark mode now, and while commit descriptions in source tree are hard to understand, they still exist. In Fork there is a designated commit description box and the commit title has a countdown of characters for recommended length. In source tree you create a new like in the same box to write a commit description.
I have also started using the git command line more since it is so much faster than any GUI. But for viewing changes I still use guis.
Which Git GUI client is the best? In my opinion of trying out the 3 different ones, Fork is the best.
- Dark mode
- Commit field that displays the maximum recommended characters for a commit messages
- Commit Description. The commit description field is great for expanding upon what your commit does.
- Automatic stashing. Fork also automatically stashes and reapplies your working copy when changing branches or doing a pull.
Source Tree is like Fork but without a dark mode (for Windows last time I used it), without automatic stashing if I remember correctly and without a commit description field. I also had continuous problems with Source Tree crashing or not working as intended.
Git Kraken has dark mode but it feels way too primitive and lacking of functionality.
I should probably return to this post later and give a more detailed explanation.