4 ms·
The git UI built into JetBrains IDEs is the only thing that makes git work for me. It's very intuitive to use. Cmd+K to commit changes. There's a list of all f
by hbn 4y ago
The git UI built into JetBrains IDEs is the only thing that makes git work for me. It's very intuitive to use.
Cmd+K to commit changes. There's a list of all files changed, organized by file hierarchy. You can click any of them to get an embedded editor and you can edit right from there.
There's a VCS pane you can pop up to view commits from any of the branches you have pulled without switching, you can select commits and right click > cherry pick to pull them into your current branch.
And the diff resolver is perfect. 3 vertical panes with the incoming and local changes on the left and right, and center is the merged product. You can press arrows on each side to bring those changes into the center, it shows right where they'll go with colored highlighting before you even make any changes. And the center is once again an editor so you can just manually type in it to resolve conflicts too.
Git's mental framework is so visual for me, it just seems like a better experience in a GUI. Especially one as well-thought-out and intuitive as what JetBrains came up with.
- rr888 4y agoThe Jetbrains IDEs work in a generic VCS way that doesn't match how git works which makes you productive but removed from how git actually works. I've found vscode IDE is just as easy to use, but the GUI matches git very closely so you learn how git works which makes switching command line git relatively easy.
- shagie 4y agoThat depends on if you use the 'VCS' menu commands or the 'Git' menu commands. That menu changes depending on what the IDE finds in the project. If its generic VCS, then you're seeing things like https://www.jetbrains.com/help/idea/version-control-integration.html https://www.jetbrains.com/help/idea/version-control-integrat... The git menu has options like 'manage remotes', 'merge', 'rebase', 'Reset HEAD' and so on. Right clicking on the log in git log pane brings up things like Cherry Pick, interactively release from here, fixup, squash into.
- mattarm 4y agoGood UI on top of git definitely makes using it more bearable day to day, but I don't think it "fixes" git's fundamental flaws (those talked about in the posted link). That said, to some degree git is just an assembly language for a DVCS without a truly usable high level interface on top of it (yet).
- TrianguloY 4y agoSame, but the issue is that you get so used to it that when you need to do something without it it's way harder. And there are things you still can't do on their UI, personally the most missing feature is to remove from git without deleting (from when you need to ignore something already checked). And also a native git reflog, once I discovered it it has saved me on more than one occasion. Can't they add it on the current log as a "show deleted commits" filter or something like that?
- graypegg 4y agoI've been hoping for a JetBrains stand-alone git client for years, similar to Sublime Merge. [0] I'm sure there's quite a few people out there that would pay $10 to use their git client with another editor. [0] https://www.sublimemerge.com/ https://www.sublimemerge.com/
- hbn 4y agoI've been following a suggestion for a standalone git client on their issue tracker for a while now, but it sounds like they're currently not interested in making it https://youtrack.jetbrains.com/issue/IDEA-152437/Make-git-client-a-standalone-app#focus=Comments-27-6602406.0-0 https://youtrack.jetbrains.com/issue/IDEA-152437/Make-git-cl...
- wordyskeleton 4y agoThey really should, it's miles better than any standalone I've used.
- graypegg 4y agoAhh :( Nice to know they've thought about it though! It sounds like since they offer their git features inside of their community edition IDEs (Android Studio, PyCharm, IntelliJ) they wouldn't be able to charge for it. I know I probably would still pay for it, if it meant not opening up a whole IDE just to use one built-in plugin, but maybe there's something I'm missing. > Dmitry Jemerov [JetBrains Employee] commented 22 Jun 2022 10:20 > This has been discussed internally a number of times and at this time we have no plans to work on this. This product would have to be free (because its functionality would be a subset of the free Community Edition), it would require significant design and development effort to repackage the functionality in the form that would be acceptable for a standalone client, and we don't believe the marketing value of this work would compensate the development costs. Of course, all the code is open source and anyone is welcome to do this work themselves as a third-party tool.
- wordyskeleton 4y agoI've used git for a decade, 8 years in CLI and the last 2 in JetBrains. It's night and day, and mountains above even GitHub's own desktop client.
- l0b0 4y agoIs there some way to stage individual lines? I do this all the time, and `git gui` seems to be the only tool which does this in a sensible way (right-click a line or selection to stage/unstage it). `git add --patch` is far too much manual work, and IDEA seems to only work with chunks, not individual lines.