Git Better Than 95% of People

Поделиться
HTML-код
  • Опубликовано: 1 июн 2024
  • Lazy Git is my new buddy when it comes to anything beyond pull/push/commit. I combined it with Tmux for extra sweetness, and in this video I cover the main features, motions, and the why & how I use it.
    ▶ github.com/jesseduffield/lazygit
    ▶ github.com/omerxx/dotfiles
    Best ways to support this channel:
    🎓 My course: learn.omerxx.com/courses/seco...
    📰 Become a better engineer in just 3 minutes a week: newsletter.omerxx.com
    ⌨️ Tech I use: kit.co/omerxx/my-battle-station
    ⏱ Timestamps
    00:00 - Intro
    01:05 - Fugitive
    02:05 - LazyGit
    06:14 - Work Trees
    07:40 - Comparing Commits
    08:15 - My Setup
    #productivity #git #terminal #neovim #vim #system #program #dev #devops #software #sysadmin #sysops #linux #macos #unix #console #cli #keyboard #commandline
  • НаукаНаука

Комментарии • 69

  • @devopstoolbox
    @devopstoolbox  4 месяца назад +3

    Become a better engineer in just 3 minutes a week: signup.omerxx.com

  • @kesor6
    @kesor6 4 месяца назад +27

    In fugitive, you can show diff using "=" and stage specific lines with "s", including a visual selection of multiple lines. I didn't check, but I assume that using "5s" to stage the next 5 lines should also work. And of course "cc" in fugitive creates commits from the staged files.

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +7

      Huh! Going to try this right now...

  • @VinitKhandagle
    @VinitKhandagle 4 месяца назад

    what a amazing video!!! loved the way you have edited the video. I am sure that must have taken a lot of time to edit it

  • @christopher8641
    @christopher8641 4 месяца назад +3

    one thing I adore about git is that its usefulness extends WELL beyond software. Really, any plaintext on a computer becomes perfectly paired with git after you understand a handful of concepts. Of course, a lot of plaintext on computers is written by devs. But, I'm sure at least a tiny bit is not

    • @devopstoolbox
      @devopstoolbox  4 месяца назад

      This is 100% true!! I’ve been using it to snapshot my second brain lately so your comment is spot on. A version control system is an amazing solution for so much more.
      That said, it has its dark corners :)

    • @daddyDangle
      @daddyDangle 4 месяца назад +1

      @noboilerplate plain text team

  • @infrofl6557
    @infrofl6557 4 месяца назад +4

    Very cool video! Lazygit actually adds some unnecessary overhead to my workflow. I found that in a project using git flow, fugitive is more than enough to do anything you need (stage, rebase, reword, squash, cherry-pick, diff merge, etc). Bysect and reflog are so rarely used that it doesn't make a lot of sense to add another tool on top of fugitive

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +3

      Thanks! I tend to agree. But many devs would rather have some kind of UI and lazy git is a perfect solution for that.

  • @NoctuaDeveloppement
    @NoctuaDeveloppement 4 месяца назад

    Amazing video always improving my workflow thanks to you

  • @Hellbending
    @Hellbending 3 месяца назад

    I’m seeing a lot of… idk like - low quality comments here showing a lot of ‘poor form’ or just crappy feedback so I figured I would try and even it out.
    Loving your content man ❤. I’ve been following you for quite some time now and I really enjoy the content you put out.
    Video ideas: perhaps a way to structure your neovim config itself, (like the actual configuration) in such a way that it’s completely aimed at optimising loading time and the on the fly performance.
    Got quite a shitty work laptop, and although I have built a couple iterations of a config I found it often times get hitches or awkward bugs that I really shouldn’t be getting lol. So have started building a third iteration from scratch that’s purely focused on optimising both load time and any/all of those performance hitches out of the way. Be interesting to see an active devs perspective on something like that.

    • @devopstoolbox
      @devopstoolbox  3 месяца назад +1

      Thanks man! I appreciate the kind words, it means a lot and that's the best form of thank you any creator can get so THANKS again ❤
      As for the idea, I had the same thing around for some time but you gave me an additional angle I didn't think of and I'll try to make something that answers that soon!

  • @estebanblanc643
    @estebanblanc643 4 месяца назад

    In fugitive do `:Git` and then in the menu open a file with `i` to see the change. Then you can do a visual line selection (`Shift+V`) and select lines. Press `-` to stage only the selected lines. This is the same as what you are doing with LazyGit at 2:51
    Thanks for the video

  • @Fullflexno
    @Fullflexno 4 месяца назад

    Super cool video. Lazygit is awesome!

  • @niksingh710
    @niksingh710 4 месяца назад +3

    Maybe too much to ask but can you create a git tutorial playlist?
    I mean with time we pickup something that we don't feel much about so if you can share them.

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +1

      I get that, I’ll do something better but it’ll take me some time - going to make a video picking one with all the reasons of how and why I’m using it - or a combo of a couple…

  • @jemag
    @jemag 4 месяца назад +1

    Interesting. Personally prefer using the combo of gitsigns, Neogit and Diffview. Both gitsigns and Neogit can stage specific lines

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +1

      Yep I know the option. Maybe I should make a video about it too…
      I’m using fugitive for 99% of my stuff.

    • @noomondai
      @noomondai 4 месяца назад +1

      Fugitive user here, would be interested in seeing a vid gitsigns + neogit usecase, cheers!

  • @KuzyoYaroslav
    @KuzyoYaroslav 4 месяца назад +2

    Stopped using lazygit and fugitive in favour of Neogit, has everything I need for day to day job.

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +1

      I’m going to cover it as well soon

    • @KuzyoYaroslav
      @KuzyoYaroslav 4 месяца назад

      Nice, looking forward to

  • @mrfsher894
    @mrfsher894 4 месяца назад +3

    Did you try neogit already? I liked it more than fugitive and the development is super active

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +1

      Just a bit, didn’t get to cover it yet. How would you compare it to fugitive and lazygit?

    • @KuzyoYaroslav
      @KuzyoYaroslav 4 месяца назад

      You are actually using your editor to work with git, even though you can open lazygit in float terminal the feel is not the same. It has support of diffview.nvim and you can easily view an resolve merge conflicts. Rebase, and commit logs everything is in place. Active development.

    • @mrfsher894
      @mrfsher894 4 месяца назад

      It is very close to fugitive but has diffview integration. It is also more easy for beginners, since they show the keys to press, which is really helpful in the beginning. I still have a few more keystrokes than in lazygit, which i truely loved, but the fuzzying over branches is nice too.
      In the end i just truely feel i can do everything with it. With lazygit I never felt comfortable doing rebasing​@@devopstoolbox

  • @SirJagerYT
    @SirJagerYT 4 месяца назад +1

    How do i get that floating command line prompt ui ? What is that plugin

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +1

      Checkout noice.nvim by folke !

    • @SirJagerYT
      @SirJagerYT 4 месяца назад

      @@devopstoolbox Thank you !

  • @ManuelEstrella
    @ManuelEstrella 3 месяца назад +1

    What terminal is that? I use iTerm 2 and copy your config file for tmux and does not look like that

    • @devopstoolbox
      @devopstoolbox  3 месяца назад +1

      I think we talked on Twitter but if anyone else reads this - Wezterm!

    • @ManuelEstrella
      @ManuelEstrella 3 месяца назад

      yeah, thanks @@devopstoolbox

  • @sarojregmi200
    @sarojregmi200 4 месяца назад

    Time to give lazy-git a try.

  • @Danielo515
    @Danielo515 4 месяца назад +2

    The problem with lazyGit rebase things, is that it uses the same confusing wording as git does. Instead of saying `you want to Squash xxxx on top of yyyy` it says `into previous one`, which one is the previous one? The one below or the one above? is the list I see in reverse order?

    • @devopstoolbox
      @devopstoolbox  4 месяца назад

      I can agree to a certain degree. Git is definitely confusing and an interactive rebase is one my least favorite things about it.
      I don’t think changing the lingo would contribute to the user but make things worse.
      I understand where you’re coming from tho

    • @Danielo515
      @Danielo515 4 месяца назад +1

      @@devopstoolbox I'm quite bad at remembering "binary" related decissions. If there were three states, then maybe I could remember, but when rebasing I can never remember what is previous and what is next: they are top to down? Or bottom up? I wish they use a horizontal layout and then just use right and left... or at least use below or above...

  • @brentsteyn6671
    @brentsteyn6671 4 месяца назад +1

    Lazygit is very cool and to get start fast as new neovim user. For me know fugitive is way better, because I created my on custom ui in nvim that is way more intuitive and less convolute then Lazygit.

  • @daddyDangle
    @daddyDangle 4 месяца назад

    Ice picks are aid

  • @mzakyr42
    @mzakyr42 4 месяца назад

    i use default color scheme btw

  • @x1x2x125
    @x1x2x125 4 месяца назад +1

    have you read danluu's bog post on how being better than then 95% of people in a discipline is not that impressive. let alone being better than 95% of the world. most people in the world don't even practice the skill that you are practicing, so it's not a fair comparison. if you can write basic programs and python your better than like 95% of everyone because most people don't write python, so you're good at something that barely anybody does. congratulations

    • @devopstoolbox
      @devopstoolbox  4 месяца назад

      Hi! The “95%” others mean other git users, but that sounded less interesting. But thanks!

  • @stillWonderingWhyMe
    @stillWonderingWhyMe 4 месяца назад +2

    Imagine being a software developer and being better than ONLY 95% of the people in the world. Considering that probably more than 99% of the people in the world don't even know `git clone`, that's an extremely poor performance :D

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +2

      😆
      I see the same comment repeating - so, yeah, true :) the idea was 95% better than other Git users not the entire earth population (although that makes it easier 😆)

  • @glyphack
    @glyphack 4 месяца назад

    git gud

  • @abdallahmeriouli4110
    @abdallahmeriouli4110 4 месяца назад

    the video should have been 18 minutes hahah

  • @RuanSilva-kk1gq
    @RuanSilva-kk1gq 4 месяца назад +1

    first

  • @stefanalecu9532
    @stefanalecu9532 4 месяца назад

    Bro really said fugitive is for "your IDE" while being misleading and simultaneously calling Vim an IDE 😂 Why not show Emacs's Magit? Oh wait ;)

  • @danielvergara9890
    @danielvergara9890 4 месяца назад +2

    I really miss your old format, now you're starting to look and sound like every disgusting "get ahead of 90% of people by doing this" content creator out there. You're better that that.

  • @KRIGBERT
    @KRIGBERT 4 месяца назад

    ...pretty sure at least 95% of the world's population does not use git

    • @devopstoolbox
      @devopstoolbox  4 месяца назад +1

      Yeah, 95% of git users wasn’t as appealing 😅

    • @KRIGBERT
      @KRIGBERT 4 месяца назад +1

      @@devopstoolbox ah, yeah, I can see that :)