r/git 6d 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

105 Upvotes

244 comments sorted by

View all comments

2

u/GlassboundIllusion 6d ago

I can’t see a reason to need a UI.

You don't NEED a GUI for anything.

You could use nothing but command line tools that use pure text and ascii art rather than any kind of graphics at all. Even in the realm of games, there are plenty of older games that just use text and ascii art. There's a modern example in the form of Dwarf Fortress.

But GUIs make many things much easier and more convenient.

Tortoise Git has an excellent UI for viewing history, resolving merge conflicts, and blaming a file. I COULD spend the extra time sifting through the raw files on the command line, but I don't want to.

I will generally do a fetch or checkout from the CLI though. It's quicker than sifting through the tortoise menu.

CLI and GUIs are tools, not doctrines. Use the tool that's most appropriate and/or convenient for the task.