Is anyone here using a GUI for git? If yes - which one and why?

kwjπŸŒπŸ‡ΊπŸ‡¦ βšͺπŸ”΅πŸŸ‘βšͺ@szmer.info to Programming@beehaw.org – 46 points –

I ask because I like console, but at the same time have difficulties remembering all the commands. I'd like to try a GUI that is comfortable to use with only a keyboard.
[edit]
My inbox got fediversized, fantastic feeling.

135

You are viewing a single comment

Github desktop will get you into trouble if you ever try to work with a team. Fine for solo development

I use Github Desktop but am looking to start moving toward CLI soon for this reason; though to be honest, I only know it's not good practice and don't know the reason why. What kind of issues can happen in a team environment using it?

The CLI and probably other more advanced guis are going to give you the option to:

  • bisect: very useful for debugging. Like definitely check it out.
  • rebase: excellent for clean commits. I use it all the time to squash commits together
  • diff arbitrary branches and commits. Super useful for debugging.
  • cherry pick: useful to apply a commit from a different branch or remote
  • Apply: I use it to pass around patches for things for testing / debugging.

That's just off the top of my head and also stuff that you can learn on the job. Good to know it exists though. I still use a "gui" (fugitive for vim) for simple tasks, like staging files πŸ™‚

For me, I don't think I could survive without git stash, I use it daily for various reasons (e.g. for validating a small bug fix, git stash & git stash pop lets me attempt to reproduce the issue both with and without a correction). The one downside with the CLI stash command is that it's very easy to forget things in stash though, but I don't think GUIs generally support stashing?

Another one I find myself doing quite often is git checkout BRANCH -- PATH, to pull specific versions of files between branches.