TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Lazygit Turns 5: Musings on Git, TUIs, and open source

211 pointsby jesseduffieldalmost 2 years ago

17 comments

sundarurfriendalmost 2 years ago
I was in the &quot;CLI git only&quot; camp for a long time, because I found many of the points the article addresses were true for other attempted UIs on top of git: they obscured what was going on, tried to impose metaphors that didn&#x27;t really fit with how git worked and thus made operations potentially dangerous, and were severely limited in what they could do.<p>Nowadays, lazygit is my main interface to git - it&#x27;s intuitive, addresses the complexity of git head-on, and doesn&#x27;t even assume you&#x27;ll remember its shortcuts constantly (except for &#x27;]&#x27; for some reason, which isn&#x27;t shown in the bottom shortcuts row). I found that I had to handle other git porcelain (i.e. UIs) really like porcelain, constantly afraid of breaking something. lazygit in constrast just feels like someone made a visual representation of git&#x27;s design and allowed you to interact with it.
nathellalmost 2 years ago
&gt; Fossil is a recent git alternative<p>It’s almost as old as git. Fossil has been around since 2006, while git was born in 2005.<p>&gt; Merge conflicts aren’t first class<p>Another DVCS where conflicts are first class is Pijul. It also has a solid theoretical foundation, which it inherited (and expanded upon) from its predecessor, Darcs.
评论 #37015060 未加载
评论 #37016980 未加载
camgunzalmost 2 years ago
I think I may have said this before but:<p>&gt; Warp: a terminal emulator whose killer feature is allowing you to edit your command as if you were in vscode&#x2F;sublime<p>I exhort anyone interested in this feature to enable vi mode for your shell; zsh, bash, and ksh all support it. Readline also supports it, which will let you use it in CLIs like REPLs and psql. It is <i>glorious</i>.
评论 #37015038 未加载
评论 #37016212 未加载
评论 #37016745 未加载
评论 #37019614 未加载
FeepingCreaturealmost 2 years ago
&gt; When I create a commit, several things happen:<p>&gt; my staged files disappear from my list of file changes<p>&gt; a new commit is appended to my git log<p>&gt; my branch ends up with a new head commit, diverging from its upstream<p>&gt; If you create a commit from the command line, you see none of this.<p>Sure, if you&#x27;re not using an addon like powerline-shell. If you do, all of those are immediately obvious.<p>I&#x27;d argue it&#x27;s less &quot;commandline bad&quot; and more &quot;<i>stock</i> commandline bad.&quot;
评论 #37018304 未加载
评论 #37013069 未加载
rgoulteralmost 2 years ago
I would have thought most discussions around &quot;UI vs CLI&quot; are more about &quot;GUI vs CLI&quot;.<p>Keyboard-driven git UI&#x27;s which aren&#x27;t GUI are relatively niche. (I can think of magit, tig, and lazygit).<p>Whereas, a git beginner may be more likely to start using git with a GUI, e.g. the git panel in VSCode, or something like GitKraken.
评论 #37011541 未加载
评论 #37011405 未加载
评论 #37013477 未加载
sublinearalmost 2 years ago
&gt; In fact I’d love to pit a CLI veteran against a UI veteran in a contrived gauntlet of git challenges and see who reaches the finish line first. You could also determine the speed of light for each approach i.e. the minimum number of keypresses required to perform the action and then see which approach wins. Even if you had a thousand aliases, I still think a keyboard-centric UI (with good git API coverage) would win.<p>If they&#x27;re faster than CLI it&#x27;s because they are also CLI experts who have an ideological mission. Nobody cares about this situation. Overall the CLI is still faster in the majority of cases at most workplaces.
TillEalmost 2 years ago
I&#x27;ve been primarily using SourceTree since way back when it was an indie app, and have continued to do so because the alternatives just don&#x27;t present the information I want in a convenient way.<p>Lazygit is the only other UI I&#x27;ve seen which presents all the relevant information without having to tediously click&#x2F;scroll through a lot of clutter.
keylealmost 2 years ago
I use lazygit every day, so much I just type lz.<p>It&#x27;s an awesome project, highly recommend.<p>If anything I&#x27;d just recommend you set your own shortcuts to avoid doing an unearthly amount of damage, typing keys as shortcuts when you&#x27;re thinking you&#x27;re typing a commit message :)
roland35almost 2 years ago
I learned about lazygit recently from it&#x27;s integration with lazyvim. The nice thing about TUIs is how it works anywhere - if I am doing work on WSL or a remote machine I can use the same tool with no issues!
Nikskoalmost 2 years ago
Congrats on 5 years Jesse! Always warms my heart when I see one of your projects pop up on HN.
评论 #37018715 未加载
sublinearalmost 2 years ago
&gt; I’m torn on how to interpret these results: being in the top 300 in Homebrew is pretty cool, but 15k installs feels lower than I would expect for that ranking. On the other hand, having almost 1 in 20 Arch Linux users using Lazygit seems huge.<p>Doesn&#x27;t the conclusion seem obvious? Most devs aren&#x27;t Apple fans.
dangalmost 2 years ago
Related:<p><i>Lazygit: Simple terminal UI for Git commands</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=36782018">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=36782018</a> - July 2023 (79 comments)<p><i>Lazygit: A simple terminal UI for Git commands</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=29394162">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=29394162</a> - Nov 2021 (141 comments)<p><i>Show HN: I made a tool that made me faster at Git</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=17689014">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=17689014</a> - Aug 2018 (229 comments)
toastalalmost 2 years ago
I’m disappointed at how much value some place in the +1 count on a proprietary code forge that the writer suggests not even taking charge &amp; having your own dedicated page &amp; embedding call-to-actions in the UI itself. I can’t blame them for wanting to market so hard &amp; in this fashion (tho not big on the join-the-Discord callout at the end), but I don’t like how much value folks are putting into a metric that’s both easy to game &amp; part of the keep-you-on-the-platform social media scheme that Microsoft GitHub has a lot of developers trapped in.
评论 #37023303 未加载
keb_almost 2 years ago
Lazygit and Lazydocker are great. Now can you please make a Lazynginx? :)
评论 #37016660 未加载
评论 #37016157 未加载
iscream26almost 2 years ago
&gt; The reasons for the deficiencies in human-machine interaction are numerous. Some come from the limitations of today&#x27;s technology. Some come from self-imposed restrictions by the designers, often to hold down cost. But most of the problems come from a complete lack of understanding of the design principles necessary for effective human-machine interaction. Why this deficiency? Because much of the design is done by engineers who are experts in technology but limited in their understanding of people. &quot;We are people ourselves&quot; they think, &quot;so we understand people.&quot; But in fact, we humans are amazingly complex. Those who have not studied human behavior often think it is pretty simple. Engineers, moreover, make the mistake of thinking that logical explanation is sufficient: &quot;If only people would read the instructions,&quot; they say, &quot;everything would be all right.&quot;<p>&gt; Engineers are trained to think logically. As a result, they come to believe that all people must think this way, and they design their machines accordingly. When people have trouble, the engineers are upset, but often for the wrong reason. &quot;What are these people doing&quot; they will wonder. &quot;Why are they doing that?&quot; The problem with the designs of most engineers is that they are too logical. We have to accept human behavior the way it is, not the way we would wish it to be.<p>— Don Norman, <i>The Design of Everyday Things</i>
arcanemachineralmost 2 years ago
I just discovered this project a couple weeks ago. Total game changer.
shrubblealmost 2 years ago
Having worked in a group with new developers, a big challenge was git ... a big flowchart image of the next action to perform was passed around. Will check this out.