Lazygit

Поделиться
HTML-код
  • Опубликовано: 20 авг 2024
  • I showcase the tool lazygit with which you can manage your git repository. It can be spawned as a standalone tool or inside of Neovim.
    Lazygit: github.com/jes...
    Vim-Floaterm: github.com/vol...
    Delta: github.com/dan...
    My Neovim config: github.com/Dav...
    Contact:
    david.devonduty@gmail.com
    #Neovim

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

  • @stoicfloor
    @stoicfloor 2 года назад +31

    thank you so much david! The use of delta inside lazygit was a significant quality-of-life improvement! Just discovered delta and very happy with it! Thank you:)

    • @devonduty
      @devonduty  2 года назад +3

      Thanks for this nice comment!

  • @JoshPeterson
    @JoshPeterson 5 месяцев назад +2

    I love Lazygit. I've become a lot more confident and branched out with my use of git since adopting it last week. Before I would just save all my changes into one commit and then push, but now that I can see the changes I'm able to commit hunks, which I never knew was a thing before this. Now I don't have to worry about undoing massive changes if I need to make a tiny change, and I love it

  • @Kartoflaszman
    @Kartoflaszman 2 года назад +7

    I've been using lazygit for a while now but you showed some new features that I'll definitely check out! Especially the diffing with delta looks awesome

    • @devonduty
      @devonduty  2 года назад

      Yeah, delta really produces high-quality diffs!

  • @farzadmf
    @farzadmf 2 года назад +3

    Really LOVE lazygit and can't live without since I started using it. Thanks for sharing!

  • @mikaandrianarijaona8007
    @mikaandrianarijaona8007 2 года назад +1

    Thanks @DevKnDuty, this was really interesting. I used to work with Neogit but I will git a shot to lazygit which has more features

  • @nil70n
    @nil70n Год назад +2

    Hey bud, thanks for the content! I'm new to neovim, started with fugitive, which is great, but lazygit looks a lot easier and also powerful. I'll give it a try.
    After reading the comments, it's impossible for me to not imagine a combination of fugitive and lazygit. It would be amazing, even better than any git tool in the market.

  • @djsnipa1
    @djsnipa1 Год назад +2

    I use all neovim, delta, and neovim but never put them all together! This is fantastic!! Thank you!

    • @devonduty
      @devonduty  Год назад +1

      The power of composable software!

  • @florianhennig4778
    @florianhennig4778 2 года назад +6

    Funny to hear that you switched to lazygit, I actually did exactly the opposite way, from lazygit to fugitive (and gitsigns).
    While using delta as a pager is pretty neat, I often find that it is just not really integrated well enough. For example when resolving the conflicts it shows the 'git style inline diffs' which I really don't like.
    Also a thing I really like about fugitive is, that you can use autocompletion in the commit buffer which is cool if you nee refer to stuff like ticket IDs in your comments or code.
    But I also have to say that I also use Gitkraken from time to time when I need to do a little bit more complicated stuff.
    Another thing to mention about lazygit is a great feature I haven't see anywhere else before: it is possible to do selective stashes in lazygit. So you can only stash or apply certain files from a stash. This is a thing I really miss in Gitkraken...

    • @devonduty
      @devonduty  2 года назад +2

      That's very interesting! I totally agree that fugitive is a lot more integrated, so you have the same color scheme etc. However, for more complicated tasks, Lazygit is more powerful.

    • @laughingvampire7555
      @laughingvampire7555 Год назад +1

      to me it was the same the moment I saw the diffs in the patch format I thought, will that work with delta, I don't wanna giveup on delta.
      Magit & fugitive are amazing

  • @andiasar11
    @andiasar11 2 месяца назад

    Thank you so much, i've been looking for how to resolve config using lazygit and you explain it best 👍💯

  • @devonduty
    @devonduty  2 года назад +7

    ... and much more Miauuuuuu 0:43

  • @friedrichwilken7942
    @friedrichwilken7942 2 года назад +1

    Thanks for the great video. Watching your channel for quite a while now and just today noticed that we are actually colleagues. Keep up the great work.

    • @devonduty
      @devonduty  2 года назад

      Wow, that's awesome! Thanks a lot for this nice comment!

  • @xdjiijii6543
    @xdjiijii6543 2 года назад +3

    interesting tool, might use it in near future, great vid

  • @jotarokujo6099
    @jotarokujo6099 2 года назад +5

    Lazygit is very cool. It's very user-friendly with the built-in help and HUD. I wish Neovim will be like that by default sometime in the future. For now you have to install which-key extension, that provides help for built-in actions.

  • @TJ-hs1qm
    @TJ-hs1qm 2 года назад +3

    I was a tig guy before I went full on lazygit plus delta. But I still keep using tig.... as my alias for lazygit 😇

  • @ho_artem
    @ho_artem 2 года назад +2

    Wow, great channel, thanks for the content!

  • @RSWDev
    @RSWDev 5 месяцев назад

    TIL about delta. TBH it takes up a lot of horizontal space when I'm multiplexing with tmux but looks so much more understandable. May be obvious but I had to edit my ~/.config/lazygit/config.yml to have the git section you showed at 6:20. I'll be switching over from GitKraken to lazygit now (I have it aliased as lz in zsh).

  • @NeverCodeAlone
    @NeverCodeAlone Год назад +1

    Very nice tool. Thx a lot.

  • @Ebbzzor
    @Ebbzzor 2 года назад +1

    Awesome! Thanks for upload

  • @hug8095
    @hug8095 6 дней назад

    very very helpful !

  • @cyberloh
    @cyberloh 2 года назад

    great tool i didn't know. will using it for sure

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

    I facing issue bg not transparency when open float window in neovim but it worked by terminal

  • @tinybandit5203
    @tinybandit5203 2 года назад +2

    Love your content, I've been a long time user of lazygit, but the addition of delta brings it to another level

    • @devonduty
      @devonduty  2 года назад

      Thanks a lot! I just followed the document here: github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md

    • @PellePedro
      @PellePedro 2 года назад

      I had to use the path ~/.config/jesseduffield/lazygit/config.yml for the config file, to have delta working

  • @hglbrg
    @hglbrg Год назад

    Just one thing: your commit message should say what the commit does (if applied) - not what you did. So if I build a feature, patch or release from a hundred commits from various developers (or even my past self only) I need to at a glance know what including this commit will do to the code base, I don't care what the individual developers were doing to achieve it. This has other benefits; if there is a bug I can easily see when it was introduced with good commit messages, if there is a feature I know is not quite ready for release I can omit the commits containing changes to that part of the codebase if the commits are clear and say what will happen to the codebase if they are applied.

    • @devonduty
      @devonduty  Год назад

      I'd say it depends what else you do. In my team, we organise commits in pull requests - and those should always represent what you want to achieve. In addition to that, we have a CHANGELOG file.

  • @CarloLobrano
    @CarloLobrano 11 месяцев назад

    I like lazygit, however inside neovim there are alternatives that not only show diffs, but also gives you all the usual IDE support, like function documentation, references, definitions etc

    • @oluwapelumi.adeosun
      @oluwapelumi.adeosun 6 месяцев назад

      Could you please clarify which alternatives you're referring to?

    • @CarloLobrano
      @CarloLobrano 5 месяцев назад

      @@oluwapelumi.adeosun I was sure I had replied already, anyway
      I was talking about junegunn/gv.vim and sindrets/diffview.nvim, but also pwntester/octo.nvim or ldelossa/gh.nvim
      The nice pro is that being integrated in neovim they work nicely with LSP

  • @momq1434
    @momq1434 2 года назад +1

    Cooooooool

  • @RvBSimmons77
    @RvBSimmons77 11 месяцев назад +1

    Hello! Great video but I have a question for you. What plug-in is causing the pop up at 1:41 which is showing that it is expecting you add a closing bracket

    • @devonduty
      @devonduty  11 месяцев назад

      Thank you! The linting is done by the language server in the background.

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

    What if you want to use commitizen when committing? 🤔

  • @crandeng7364
    @crandeng7364 Год назад

    Awesome, So cool men!

  • @aNotoriousPhD
    @aNotoriousPhD 2 года назад +1

    is there an easy way to get it so that the diff shown in lazygit is split like you have it?

  • @seriouslyiknowhowtoread
    @seriouslyiknowhowtoread Месяц назад

    Question is lazygit async? so if I have it open does it automatically know this?

  • @rollingc2013
    @rollingc2013 10 месяцев назад +1

    Hey, how have you got your changes to show side by side like that? I'm getting the default way

    • @devonduty
      @devonduty  10 месяцев назад

      Hi, I'm using the following config:
      git:
      paging:
      colorArg: never
      pager: delta --dark --paging=never
      github.com/jesseduffield/lazygit/blob/master/docs/Config.md

    • @devonduty
      @devonduty  10 месяцев назад

      and for delta, in ~/.gitconfig I use
      [delta]
      side-by-side = true

    • @rollingc2013
      @rollingc2013 10 месяцев назад

      @@devonduty thanks a lot. I have never heard of these options lol

  • @r4k4210
    @r4k4210 Год назад

    Really nice!

  • @_luisald
    @_luisald 6 месяцев назад +1

    nice video!! Can I use emojis with lazygit?

  • @offlercrocgod
    @offlercrocgod 2 года назад +1

    The only thing it lacks is a good git blame workflow.

    • @devonduty
      @devonduty  2 года назад +1

      This is true, for that I use git signs (which unfortunately doesn't allow navigating to previous commits).

    • @offlercrocgod
      @offlercrocgod 2 года назад

      @@devonduty yeah but navigating to previous commits is a major feature to be missing from a blame workflow.

  • @AnoopD2013
    @AnoopD2013 2 года назад +1

    Hi thank you for your vids . I am a nvim newbie and finding it hard to make nvim-dap work with php . I used to do debugging with Vdebug and it was working fine for me . Once i switched to nvim , i have to go back to vim for debugging . Do you have any exp with php ?

    • @devonduty
      @devonduty  2 года назад +1

      Thanks! Unfortunately, I don't have experience with debugging php in vim. But maybe the GitHub repo of nvim-dap has some useful info? github.com/mfussenegger/nvim-dap/issues/118

    • @AnoopD2013
      @AnoopD2013 2 года назад +1

      @@devondutyThank you for the reply . I have following this thread but couldn't see light at the end . Thank you once more for those wonderful vids .

  • @adityasinha3669
    @adityasinha3669 2 года назад

    One thing I love about fugitive is 3 panes to solve for merge conflicts… does lazygit also have that?

  • @chadjaasofianne310
    @chadjaasofianne310 5 месяцев назад

    hello, really liked the video, but, I am just wondering, how you could make lazyGit looks like this, I am using the default looking and I couldn't figure out how to change it, I want the changes panel to look exactly like the one you have here.

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

      Hi, you can check out the configuration options here: github.com/jesseduffield/lazygit?tab=readme-ov-file#configuration
      You can also use Delta for the diffs.

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

      @@devonduty thank you very much.

  • @Redyf
    @Redyf Год назад

    Lazygit vs neogit, please make a video about it

    • @devonduty
      @devonduty  Год назад

      Hi, I've already made a video about Neogit: ruclips.net/video/aJikrPnTOtI/видео.html

  • @PTan9o
    @PTan9o 7 месяцев назад

    When you press 'e' to go to edit the file in your neovim instance, do you have some special configuration to make that work? Doesn't seem to work out of the box for me and I really want that functionality. I looked through your Neovim config on GitHub and didn't see anything that specifically configured lazygit to do that.

    • @devonduty
      @devonduty  7 месяцев назад

      Hi, indeed I had to change the command to open it in the current Neovim instance, however I don't remember the command to do that.

    • @PTan9o
      @PTan9o 7 месяцев назад

      @@devonduty I found the place in your neovim config where you map leader g to LazyGit. I tried this and was successful in opening LazyGit in Neovim but pressing e doesn't bring me to the target file. It's opens the file in the LazyGit window. When you said you did some extra configuration, did you have to do anything outside of your neovim config?

    • @devonduty
      @devonduty  7 месяцев назад +1

      @@PTan9o Yes, I think that happened in the LazyGit configuration. Maybe you can check their repository on how to do that.

  • @bennypowers1386
    @bennypowers1386 2 года назад +1

    can you post links to your configs please?

    • @devonduty
      @devonduty  2 года назад

      Sure, it's here: github.com/David-Kunz/vim

  • @UberRuthlessOld
    @UberRuthlessOld 5 месяцев назад

    Hey, which font you are using?

  • @kamalkamals
    @kamalkamals 2 года назад

    push missing :)

  • @yookeunsik
    @yookeunsik Год назад

    how to diff view like you? just default diff view in my case.

    • @devonduty
      @devonduty  Год назад +1

      You can change it in the Lazygit configuration: github.com/jesseduffield/lazygit/blob/master/docs/Config.md

  • @ProjectileGrommet
    @ProjectileGrommet Год назад

    How do you log into your GitHub to pull existing repos of yours?

    • @devonduty
      @devonduty  Год назад

      You can provide a token to your git CLI.

  • @mrlectus
    @mrlectus Год назад

    How is your diff split side by side?

    • @devonduty
      @devonduty  Год назад +1

      This is a configuration of Lazygit, see here for more info: github.com/jesseduffield/lazygit/blob/master/docs/Config.md

  • @EpsilonKu
    @EpsilonKu 2 года назад +1

    Pls, can you synchronize your channel on Odysee?

    • @devonduty
      @devonduty  2 года назад

      I haven't heard of Odyssey yet, I'll take a look!

    • @EpsilonKu
      @EpsilonKu 2 года назад +1

      @@devonduty Cool, Mental Outlaw and Distrotube already made video about it

  • @BraxtonMeyer
    @BraxtonMeyer 2 года назад +1

    this looks like magit but worse...

  • @GregRippetoe
    @GregRippetoe 11 месяцев назад

    The version control tool in Webstorm is much better