Title text: If that doesn't fix it, git.txt contains the phone number of a friend of mine who understands git. Just wait through a few minutes of 'It's really pretty simple, just think of branches as...' and eventually you'll learn the commands that will fix everything.
I was looking for this comment. PHP storm and git are like best friends. I very very rarely need to resort to the CLI and generally that's for hard resetting after I screw something up
Good luck doing anything remotely complicated/useful in git with an IDE. You get a small fraction of what git can do with a tool that allows absolutely 0 scripting and automation.
IDE git is less powerful than CLI git. However I'm pretty confident that most people use more features of git by using a GUI.
CLI feature discoverability is pretty awful, you have to go out of your way and type git help to learn new commands.
With a GUI though, all the buttons are there, you just have to click a new button that you've been seeing for a while and the GUI will guide you how to use it.
It sounds like you don't speak from experience. I have all the automation I need. It supports git hooks on top of IDE-only features like code checking.
If I have to fire up my CLI for some mass history rewriting (like changing an author for every commit), or when the repo breaks - so be it. But by not using the CLI I save my fingers and sanity, because committing a bunch of files is several click away with little to no room for error.
I can rebase, patch, drop, rename, merge, revert, cherry pick, and solve conflicts with a click of a button rather than remembering all the commands and whatnot.
I wish! The best Linux git gui I have found is SmartGit. I like it, but it's just a little goofy and not free. Fork is better for its ability to very easily stage and/or stash a subset of the current changeset.
Anyone got any suggestions? I tried git-cola and gitkraken. The former I found obtuse and limited, and the latter is not free in addition to somehow making git harder with a pretty gui.
I hate coding on Windows, maybe I'll check that out. (My only option is Windows for my work laptop because I need to use a few Windows-only softwares and IT says I'm not allowed to dual boot)
I'd love to like the desktop app, but I just don't understand what it's doing under the hood when I click a button. When I click an icon, is it syncing my changes up as it pulls down, it just pulling down? I guess point and click is more scary to me when prod is on the line.
If I may shill for a moment, that's something I like about sublime merge - the buttons mostly map to git commands, and it has a nice log showing the commands it ran and their output.
Freaking love TUIs, it’s like they took the convenience of a GUI and the efficiency of the CLI and merged them. As a Neovim and Lazygit user myself it’s amazing what I can accomplish in but a few keypresses.
I'd use Desktop if it worked, unfortunately recently it decided that I don't have read/write access to a repo I'm working on. Works fine in git CLI so idk what the problem there is.
Are you able to fall back to normal git commands if you don't know the shortcuts? This sounds awesome until I can't remember the syntax to do something I don't do everyday.
I switched to gitextensions, sourcetree had so many bugs that it was getting on my nerves. Gitextensions has a similar layout, it also has the history view. It's not prefect (recently they removed the dark theme because they upgraded some dependency and it didn't work anymore) but it's the best alternative I've found
Tower is pretty nice for mac user too. I paid for it for a few versions back when I was coding full time. Now I just stuck to source tree for occasional freelance and personal projects.
I use the right tool for the job, always. If all I need is to push a branch, then I’d rather use a UI that quickly shows me the changes in a nice diff layout. If I’m doing a pull request review and want to run it locally, I select the branch, pull, and go.
That said, when there are conflicts or tricky merges, or I want to squash a bunch of commits, anything like that, I’ll use the CLI.
It’s not about being above GitHub desktop or being an enlightened CLI user. It is about using the tool that is needed.
I’ve only been writing and releasing software for 15 years, what do I know.
That said, use whatever workflow fits you best! If that’s your hands never leaving the keyboard, rock on! If you instead write code like you’re playing an FPS, enjoy! We all do this because we like it, right? 😊