Live data from Hacker News

The lazy Git UI you didn't know you need

bwplotka.dev

31–40 of 224 posts

Re: The lazy Git UI you didn't know you need

#31
post #24

Earlier quoted context omitted.

Git doesn't fundamentally work with diffs (patches). It stores the complete file and generates a diff. So you can use any diff tool you like with git, and I presume also with JJ. Look for the setting. Edit: in git it's the diff.external setting

I know I can. I want to use jjui, but its UI isn't as good, so I use lazygit.

There's also lazyjj. I haven't really bothered with a TUI yet so can't say which has nicer diffs, but you might try it.

Re: The lazy Git UI you didn't know you need

#32

the only good git GUI that exists is Fork. Unfortunately, it doesn't run natively on Linux, although some people have had luck running it under Wine. I found lazygit specifically so bad to the point that I was better off typing in git commands into the terminal manually like some sort of caveman. Somehow, lazygit has found a way to make git even more confusing and user hostile than it already is, which is a significa…

As much as I heartily disagree with most of what you wrote - and seeing all the downvotes, I'm not the only one - there is a nugget of truth in what you wrote, which answers a lot of your complaints. "Using it was a harsh reminder of what people running emacs or vim for the first time have to go through." The benefit of keyboard-driven programs like Vim is that you're trading an initial learning curve for a vastly mo…

> The benefit of keyboard-driven programs like Vim is that you're trading an initial learning curve for a vastly more efficient experience once the learning is done+.

I have never been rate-limited by my keyboard input speed. I have lost many minutes of time daily looking up cheatsheets for terminal tools that I use occasionally.

Ironically, when I see what impact AI has had on my programming, the biggest has been in saving me time crafting command line invocations instead of browsing --help and man .

Re: The lazy Git UI you didn't know you need

#33
post #24

Earlier quoted context omitted.

I know I can. I want to use jjui, but its UI isn't as good, so I use lazygit.

There's also lazyjj. I haven't really bothered with a TUI yet so can't say which has nicer diffs, but you might try it.

I've tried lazyjj, but jjui was better (at least, back when I tried it).

Re: The lazy Git UI you didn't know you need

#34
post #28
post #7

You might laugh, but in years of serious development, I have not come across a better git UI tool than SourceTree. If I want to be hard-core, I'd use the original git CLI. SourceTree is unmatched in how it makes using git so much more pleasant for when you need to do something relatively simple, but which would be quite cumbersome to do with the CLI and most other tools I've tried. Its file status and history view is…

I find both Fork and Tower to be much better than SourceTree, have you only tried free tools?

I have dabbled in those tools. Still did not change my opinion.

Re: The lazy Git UI you didn't know you need

#35
post #7

You might laugh, but in years of serious development, I have not come across a better git UI tool than SourceTree. If I want to be hard-core, I'd use the original git CLI. SourceTree is unmatched in how it makes using git so much more pleasant for when you need to do something relatively simple, but which would be quite cumbersome to do with the CLI and most other tools I've tried. Its file status and history view is…

Do you use the Mac or Windows version?

The Mac version

Re: The lazy Git UI you didn't know you need

#36
post #28
post #7

You might laugh, but in years of serious development, I have not come across a better git UI tool than SourceTree. If I want to be hard-core, I'd use the original git CLI. SourceTree is unmatched in how it makes using git so much more pleasant for when you need to do something relatively simple, but which would be quite cumbersome to do with the CLI and most other tools I've tried. Its file status and history view is…

I find both Fork and Tower to be much better than SourceTree, have you only tried free tools?

I can't live without Fork. It's the one thing I miss on Linux. I have it in Wine, but it's running terribly there unfortunately.

Re: The lazy Git UI you didn't know you need

#37
post #29
post #7

You might laugh, but in years of serious development, I have not come across a better git UI tool than SourceTree. If I want to be hard-core, I'd use the original git CLI. SourceTree is unmatched in how it makes using git so much more pleasant for when you need to do something relatively simple, but which would be quite cumbersome to do with the CLI and most other tools I've tried. Its file status and history view is…

There are few UI's that I hate more in the world than SourceTree. That pile of junk has cost me so many hours of life trying to support the developers in fixing a thousand weird issues. No, please throw SourceTree into the garbage can.

What exactly were the problems? I have been using it since like forever and have not run into any issues at all. Granted, like I said, I don't use it for any hard-core stuff.

Re: The lazy Git UI you didn't know you need

#38
post #12

A large percentage of git users are unaware of git-absorb ( https://github.com/tummychow/git-absorb ). This complements just about any git flow, vastly reducing the pain of realising you want to amend your staged changes into multiple commits. This sits well alongside many TUIs and other tools, most of which do not offer any similar capability.

I see the usefulness. But my client is magit, and committing and rebasing are so quick that this will reduce perhaps 30 seconds to one minute to my workflow. And I do not like most rust tools, because they're too dependency heavy.

Definitely. The instant fixup feature is just three keystrokes away (s c F). The only thing this helps is when you don't want to spend the extra brain cycles to figure out which commit to fixup on.

Re: The lazy Git UI you didn't know you need

#39

the only good git GUI that exists is Fork. Unfortunately, it doesn't run natively on Linux, although some people have had luck running it under Wine. I found lazygit specifically so bad to the point that I was better off typing in git commands into the terminal manually like some sort of caveman. Somehow, lazygit has found a way to make git even more confusing and user hostile than it already is, which is a significa…

As much as I heartily disagree with most of what you wrote - and seeing all the downvotes, I'm not the only one - there is a nugget of truth in what you wrote, which answers a lot of your complaints. "Using it was a harsh reminder of what people running emacs or vim for the first time have to go through." The benefit of keyboard-driven programs like Vim is that you're trading an initial learning curve for a vastly mo…

> The benefit of keyboard-driven programs like Vim is that you're trading an initial learning curve for a vastly more efficient experience once the learning is done+.

This is simply not true and I say this as a life long vim user. The only reason I have vim mode enabled in all the editors that support it, is the fact that it's immensely difficult to retrain muscle memory accumulated from a decade+ time sunk in that editor. Nothing about vim or any of these other tools being keyboard driven, make me more productive in a way that matters.

> Mouse-driven tools like VS Code don't demand that the user learns them.

Good. That's how all software should be. It's a means to an end, not the center of the universe. The whole reason for bringing a UI layer into all of this in the first place is freeing up my brain from having to deal with git's bullshit.

> Keyboard shortcuts there are optional, since practically everything is in a menu or a UI that can be moused to.

The shortcuts are still there if you care to learn them - it should absolutely not be a prerequisite.

> +And the "learning" for these tools can be shortened dramatically by keeping a printed-out cheatsheet.

Or, I could use some actually well designed software and save myself some printer ink :-)

Re: The lazy Git UI you didn't know you need

#40
post #7

You might laugh, but in years of serious development, I have not come across a better git UI tool than SourceTree. If I want to be hard-core, I'd use the original git CLI. SourceTree is unmatched in how it makes using git so much more pleasant for when you need to do something relatively simple, but which would be quite cumbersome to do with the CLI and most other tools I've tried. Its file status and history view is…

For staging/committing I haven't found anything that I've liked more than Git Extensions' Commit view.

One of the main things I like about it is that it does _not_ auto refresh. A long time ago with SourceTree I'd have issues mixing git CLI and SoureTree because two processes would be doing things at the same time (I assume SourceTree was doing things like `git status` while I was trying to `git fetch` or something).

https://git-extensions-documentation.readthedocs.io/en/main/...

Post reply on HN