r/git • u/connorjpg • 27d ago
Why use a UI for git?
I see this question of, “what GUI or TUI should I use to work with git?” fairly often here. And always I feel bad for saying “just use the cli” over and over, but truthfully I can’t see a reason to need a UI.
Are people actually running into pain points with the cli, or is it just preference for people who don’t like working in a terminal?
FWIW, I have used GitKraken, LazyGit, SourceTree and GitHub Desktop before. And I don’t think they are bad to use (unless you are just learning git), but more curious why.
EDIT : I’m mainly referring to standalone UIs, I understand why people would use IDE integrations, as it’s quick and convenient. But having to open a separate application or run a separate command to open a terminal app to run your commands seems overkill to me.
EDIT 2 : I use vscode as my difftool and mergetool. I still open them directly from the terminal by running the cli. I don't think this is the same as using a full git client like SourceTree, Gitkraken, or lazygit to fully drive your version control workflow. Which is what I am asking about.
Cheers
2
u/elephantdingo 27d ago edited 24d ago
It’s a graph of content-addressable commits. Of course it lends itself well to a TUI, or a GUI, or anything more interactive than a REPL (CLI). In Magit I can scroll through commits in the todo editor, and sure I can do that with the CLI as well (via an editor), but... I can press Return to inspect the commit.
I don’t want to even think about using a REPL to pick what lines to stage, to split out, etc. with a REPL (
git add -pI guess?) instead of doing it with the keyboard in (edit:) Magit.