this post was submitted on 20 Jun 2023
76 points (100.0% liked)

Programming

13380 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 1 year ago
MODERATORS
 

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.

top 50 comments
sorted by: hot top controversial new old
[–] Kernel 18 points 1 year ago (3 children)

It's a paid app only available for Windows and Mac at the moment, but Fork may be worth a look: https://git-fork.com

[–] BentiGorlich@thebrainbin.org 3 points 1 year ago (1 children)

I am using it too and I love it. I only know source tree as a competitor and in comparision it sucks....

You dont have to pay for it, even when using it comercially (unpess they changed that)

load more comments (1 replies)
load more comments (2 replies)
[–] exu@feditown.com 14 points 1 year ago (4 children)

Magit with emacs (doom emacs to be fully honest). More a TUI, but definitely fully keyboard driven :)

[–] ShadyGrove 5 points 1 year ago

Yeah this is THE best interface for git. Worth getting into Emacs just to use it id say.

[–] django@discuss.tchncs.de 4 points 1 year ago

Magit on Spacemacs for me. Absolutely brilliant tool. https://magit.vc/

load more comments (2 replies)
[–] antevirus@kbin.social 12 points 1 year ago (1 children)
[–] HarkMahlberg@kbin.social 6 points 1 year ago

It doesn't get enough love.

[–] ezekiel@kbin.social 10 points 1 year ago (4 children)

Sublime Merge has been wonderful to work with

[–] flash0flight@kbin.social 3 points 1 year ago

Definitely can recommend Sublime Merge as well!

[–] yanni 3 points 1 year ago

I also love how fast Sublime Merge is. The built in merge tool is great too. I'm a sucker for apps with a command palette for easy access to every command.

load more comments (2 replies)
[–] djoot@feddit.dk 10 points 1 year ago

Lazygit changed how I use git, it is so easy to do all the daily essentials like branching, committing, and merging, but also also does more advanced things like interactive rebasing when needed.

I had searched for a proper git client, that was free and open source plus worked on both Linux and Windows, for a long time and I haven't looked back after finding lazygit.

[–] domi@lemmy.secnd.me 9 points 1 year ago (2 children)

GittyUp! https://murmele.github.io/Gittyup

I previously used GitKraken but was looking for an open source alternative that works in a similar fashion and has a Flatpak.

load more comments (2 replies)
[–] s_w 8 points 1 year ago (3 children)

I use IntelliJ's built-in git GUI.

I don't understand why people use command line only. Sure, learn the commands so if you need to use them you can, but most GUIs are far more feature rich than command line. With IntelliJ, I can easily view differences before committing, have it do code quality scans, automatically clean up any code it can, more easily choose which files I want to commit vs the typical 'git add .' I see most people do with command line, have separate changelists when pair programming, and much more.

One argument that continually comes up is that command line is faster. I completely disagree. If I want to just commit the code without reviewing it, I can use 2 hot keys and the code is committed and pushed. But as I do a quick readthrough of all the code first and review issues from the code quality analysis it does take more time, but still less than it would to do comparable things with command line.

load more comments (3 replies)
[–] sunaurus@lemm.ee 8 points 1 year ago (2 children)

I use a 50%-50% mix between git CLI and the built-in git tools in JetBrains IDEs.

To be honest, I could quite easily get by with just the JetBrains GUI - they have a super sophisticated GUI that can easily handle things like interactive rebase, cherry-picking, etc + they have a great conflict resolution tool. I just use the cli every now and then if I want to get something done quickly while I don't have an IDE window open.

load more comments (2 replies)
[–] Relisui@kbin.social 7 points 1 year ago (4 children)

Gitkraken is the powerhouse, but i only use it for difficult commands

load more comments (4 replies)
[–] corytheboyd@kbin.social 7 points 1 year ago* (last edited 1 year ago)

These days I can run everything I need to with the git cli. I use the JetBrains visual merge tool to resolve conflicts, because doing that by hand is so awfully error prone, it very very intuitively maps to a visual process

[–] narc0tic_bird 7 points 1 year ago (4 children)

I use a mix of CLI, the Git UI built into VSCode, and Sublime Merge.

Sublime Merge is great for getting an overview, it's very snappy (especially when compared to Electron Git UIs), and I love the merge conflict editor. It's not cheap, but worth every penny.

load more comments (4 replies)
[–] CosmicBlend@kbin.social 7 points 1 year ago (2 children)

I used to use SourceTree but it runs horribly and switched to Fork years ago and never looked back. I use VSCode for merge conflict resolution.

load more comments (2 replies)
[–] priapus@lemmy.one 7 points 1 year ago (2 children)

I use Lazygit, which is a TUI. It is entirely controlled by keyboard shortcuts and has a lot of quick ways to do tedious things.

load more comments (2 replies)
[–] sznio 7 points 1 year ago

I use the VS Code built-in git support for making commits, and fall back to the CLI for anything else.

You won't have trouble remembering commands once you use them often enough. And you don't need to know all of them, just the ones your workflow uses. My toolbox is commit, checkout, status, reset, rebase -i, merge, bisect. That's all I need day-to-day.

[–] Unimeron@feddit.de 6 points 1 year ago

KDE has a relatively new git tool named Kommit: https://apps.kde.org/de/kommit

[–] argv_minus_one 5 points 1 year ago

The number of Git front ends with proprietary licenses is too damn high.

[–] boo@lemmy.one 5 points 1 year ago

Apart from the cli, gitk and git-gui are plenty good in my opinion, they could always be made better. And they are mostly always there with git Only thing I am miasing now is blame.

[–] themikeyj 5 points 1 year ago

when I absolutely need to... git-gui.

Live by the console, die by the console.

(I should change things up and try to make my life easier -- vim for life) 🙃

[–] postscarce@kbin.social 5 points 1 year ago

I use GitHub Desktop for 95% of my git needs, terminal for the other 5%

[–] MaxPower@feddit.de 5 points 1 year ago* (last edited 1 year ago)

If you have trouble remembering git commands for CLI have a look at the tool tldr:

https://man.archlinux.org/man/tldr.1.en

For example if you need to remember how to use the branch command you could look it up with

tldr git branch

which would give you an overview on the most popular use cases.

And in case you don't already know: You may want to use the history search tool of your shell by hitting CTRL-r and then for example typing branch. You'd get a list of past commands you have used containing branch that you can flip through by repeatedly hitting CTRL-r.

[–] evolatic 5 points 1 year ago (3 children)

I use GitKraken. It has a beautiful interface. It's free to use non-commercially but I pay $50/yr so that it can connect to my companies Enterprise account. I know I'm weak with git (I get the concepts but I'm a visual person) so the money is worth it to me.

load more comments (3 replies)
[–] fidodo 5 points 1 year ago (2 children)

No, I find typing faster than clicking and I've been using git for so long the commands are second nature to me.

load more comments (2 replies)
[–] Orvanis@lemm.ee 5 points 1 year ago

TortoiseGit user here. Love that it integrates with Windows Explorer so I don't have to constantly be opening an app first to fire off some Git commands.

[–] ptz@dubvee.org 5 points 1 year ago* (last edited 1 year ago) (1 children)

"No. No, man. Shit, no, man. I believe you'd get your ass kicked, sayin' somethin' like that, man." - Office Space

That said and jokes aside, occasionally I'll use the integrated git in vscode but mostly use the terminal. I do recommend a Git cheat sheet to help become more proficient with the CLI interface.

~~Atlassian~~ Github Git Cheatsheet: Changed to the Github version as the Atlassian one was an auto-downloading PDF.

load more comments (1 replies)

I use VSCode for simple commits and merge conflicts. Anything more complicated and I go to CLI since it's usually better documented.

[–] vredez@discuss.tchncs.de 4 points 1 year ago (2 children)

I've tried a lot and settled with vim-fugitive. If you know and like Vim-keybindings it's probably the best choice out there.

load more comments (2 replies)
[–] thepaperpilot 4 points 1 year ago (1 children)

I use sublime merge because I really like ST and want to further support the dev. I wish it had more integrations with github (and theoretically github alternatives), but I understand the reasoning not to. Before SM came out I just used the command line exclusively.

load more comments (1 replies)
[–] Joph@programming.dev 4 points 1 year ago* (last edited 1 year ago) (1 children)

I use the TUI gitui Though I also use the git cli directly too, depends on what I'm doing.

load more comments (1 replies)
[–] vraylle@kbin.social 4 points 1 year ago* (last edited 1 year ago) (2 children)

I actually like the tooling built into VS Code. Added the GitHub Pull Requests and Issues extension for the PRs, pretty happy with it all at the moment. Before that I like a specific older version of SourceTree that didn't forget your credentials.

load more comments (2 replies)
[–] ChrissieWF@discuss.tchncs.de 4 points 1 year ago

Developing in a Windows environment, I generally prefer Git Extensions.
It doesn't distract the eye with unneeded fancy and is very close to a command line git experience but still allows me a better visual sense of the repository and branches.

[–] Xanvial@lemmy.one 4 points 1 year ago* (last edited 1 year ago) (1 children)

I use git fork on Mac, same reason, I don't remember all the commands. Also want to see the history visualization

load more comments (1 replies)
[–] hazelnoot 4 points 1 year ago

For daily work, I use the git integration built into my IDE. Occasionally I need the CLI for something complex.

[–] TerabyteRex@kbin.social 4 points 1 year ago

i just use Visual Studio or VS Code

[–] danknodes@kbin.social 4 points 1 year ago

VS 2022 is finally somewhat usable for Git using the git Changes pane. The whole team uses it this way, and for many of them it's a first for git as well.

[–] kryostar 4 points 1 year ago

My inbox got fediversized, fantastic feeling.

Hey hey hey, I want that too!

As for git, I just use the plugin on VS code. Nothing fancy. I didn't even know there's other options like GUI to be honest.

[–] f15htastic@programming.dev 3 points 1 year ago

I used to use GitKraken at my old job and loved it most of the time, slick UI and generally did what you wanted to do.

I'm using Atlassian SourceTree at my current place since it's what they give us and it's...fine. Not as nice as GitKraken.

I mainly use them because I originally used TFS's TFVC when I started my career and when we transitioned to Git, I started out using a GUI so never really learned to use the CLI.

[–] Martinligabue@kbin.social 3 points 1 year ago (1 children)

I use github desktop since I'm not using git a lot, and that gui is very easy to understand

load more comments (1 replies)
[–] alottachairs 3 points 1 year ago (5 children)

Github desktop is the only way I know how to clone my private repo. I do not understand how to clone my private repos through CLI.

load more comments (5 replies)
[–] kriss0706@kbin.social 3 points 1 year ago

I use GitHub Desktop - offered by GitHub themself. Its a GUI application where you can fetch, push, pull etc. But mostly just basic github "commands".

https://desktop.github.com/

[–] abhibeckert 3 points 1 year ago* (last edited 1 year ago)

I use various extensions for Visual Studio Code. They add a million features, but these are the ones I find most useful:

I prefer to view the current status of my checkout in the sidebar of my code editor than on the command line.

It's easier to view a diff of a file and decide whether to stage or rollback changes in a GUI. With most GUIs you can even select individual lines of code and revert or stage them.

I like how Commit and Push and Pull are a single "Commit & Sync" button in Visual Studio code. Similarly there's a simple "Sync" button in the status bar.

Speaking of the status bar - it also has a counter for commits that need to be pushed or pulled. And it tells you what branch you're currently on. And whether you have uncommitted changes. Handy.

I find the GUI equivalent of git log --graph is significantly easier to understand when the graph is drawn with nice vector lines instead of ASCII art.

Finally - I don't just use raw git, I also use extensions like pull requests, and I create branches for issue numbers. I have an extension that shows pull requests in Visual Studio Code and also shows issues assigned to me, with a one click "Start Working" button to create a branch named after the issue and change the issue status to In Progress. And when I'm finished working on it, there's a button for that too.

[–] Geo_bot@dataterm.digital 3 points 1 year ago

I've been using the git gui extension for a while and resolve conflicts in vs code. I also just use a lot of cli

[–] aksdb@feddit.de 3 points 1 year ago (1 children)

I am pretty hooked to SmartGit. I absolutely love their branch and commit view and haven't found another tool that visualizes the tree quite as good (for my taste; I assume it has to do with familiarization over time).

I did however buy a lifetime license when they still offered them. Their current pricing model would have probably turned me off before I even got hooked. It is absolutely worth a look though.

load more comments (1 replies)
[–] sunshine@kbin.social 3 points 1 year ago (1 children)

If you're already comfortable working in the shell, you should check out tig. It's not as fully featured as the other clients named here, but it's an excellent viewer nevertheless.

[–] corytheboyd@kbin.social 3 points 1 year ago* (last edited 1 year ago)

tig is rad, though it’s more like git log on steroids than a proper UI for git commands (at least the way I use it)

load more comments
view more: next ›