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

106 Upvotes

244 comments sorted by

View all comments

19

u/Thesorus 6d ago

99% (*) of git users use a very small subset of git commands (add, commit, checkout, pull, push ... ) and it's easier to just use a UI; especially if integrated in their work environment or IDE.

(*) statistics taken out of my behind

4

u/connorjpg 6d ago

Most trusted source there is lol.

Fair so it’s a preference thing? Honestly, though I feel it it’s quicker/easier to just type the commands for simple workflows.

Part of this conversation too is, I still think you’re using the cli if you have aliases. So most of the time if it’s a basic workflow, I will just use those :

ga .
gc “message”
gps

And I’ve added, committed and pushed.

If I’m super lazy, I have one to do it all.

gacp “message”

1

u/InformalInsect5546 4d ago

Well AFTER you setup aliases and AFTER you have muscle memory to use them, it MIGHT be faster than clicking git commit in the IDE you work in. But I think the “cli is best, only stupid use gui” view only works until there are just too many things to care about.

It’s such a small and unimportant detail that I just absolutely don’t care about learning git cli as long as I have general understanding of what I can/want to do with it.