Sooo great! This is that next level git workflow I've seen one or two developers do that blew my mind. This is such a clear and concise explanation that it seems trivial.
This is the most important thing I have see with Git. I always struggle to manual stages files and need remove some part to just do a simple commit but this tools is just amazing and could really save me a lots of works and times ! Thanks a lots for your channel and all those wholesome videos ! ❤
I agree. Feels like I found this gold vein in the vast trash pile of coding youtube channels with lazy content aimed to generate cash flow only. And I am super conflicted if I want to share this channel as it deserves or selfishly keep it to myself. :D This creator gives me fireship-level-quality-vibes.
I use lazygit over anything else, but I have never bothered to learn for instance the partial hunk thing but rather just avoided changing unstaged (but changed) files until I've managed to stage (and commit usually) them. I think this is a good approach generally (to work with one thing at a time) but there are times where I saw something small that I want to change in a file while working in it - and that change has nothing to do with the commit I am working on atm but should be its own. Most of the time when that happens I just go "meh I'll do it after, I will totally remember to do it after". Works 2 out of 10 times. :P In addition: While Lazygit is amazing, as is most git-GUI things in most IDEs (let's be honest), I do think it is very good to understand what your GUI does in the background so I would always recommend people to learn "manual" git commands, at least add, diff, status, fetch, pull, push, commit and stash - as well as understand what actually happens when you use them. Otherwise you'll end up in a bind when your button (or CLI-option) doesn't work and you have no idea why.
Almost any gui client allows that such as git-gui or the built-in gui in vs code like you just select lines and add them to stage with right click. The problem with all that is it's not a universal solution, at first I also thought it would allow me to rewrite the whole history of my pet projects but when I tried to do that I encountered some problems like there are sometimes "garbage" changes like dependencies in configuration files, configuration changes you never bothered to look up or just dozens of imports from a bunch of official libraries, especially the latter. I called these changes garbage bc they are meaningless when you look at them in git client while making commits.
No, they are using the truncated infinite / imperative tense (add gitsigns vs adds gitsigns), they are giving an order to the commit to do something, which is the worst possible type of messags in my opinion, past or present tense are more intuitive.
It is indeed, that's why it's called "lazy" git; you forget these things (although its command history pane is really useful to learn stuff in case someone wants to)
Sooo great! This is that next level git workflow I've seen one or two developers do that blew my mind. This is such a clear and concise explanation that it seems trivial.
This is the most important thing I have see with Git.
I always struggle to manual stages files and need remove some part to just do a simple commit but this tools is just amazing and could really save me a lots of works and times !
Thanks a lots for your channel and all those wholesome videos ! ❤
Fantastic! I love the speed, no cruft.
You can do this in almost every git GUI... and with so much more ease - generally just select the lines you want to stage and press a button.
I tried doing this for hours in vscode, failed miserably. I tried for hours but no help. Then I used git patch and wow
This is my new favourite channel
I agree. Feels like I found this gold vein in the vast trash pile of coding youtube channels with lazy content aimed to generate cash flow only. And I am super conflicted if I want to share this channel as it deserves or selfishly keep it to myself. :D This creator gives me fireship-level-quality-vibes.
*"This was such a good video, like, oh my gosh!"* - me, probably.
Liked and subbed 🎉
😂
you can do the same in lazygit with line commit, just select the chunks you want in the commit
lazygit does seem really cool, I've been playing with lately
I use lazygit over anything else, but I have never bothered to learn for instance the partial hunk thing but rather just avoided changing unstaged (but changed) files until I've managed to stage (and commit usually) them. I think this is a good approach generally (to work with one thing at a time) but there are times where I saw something small that I want to change in a file while working in it - and that change has nothing to do with the commit I am working on atm but should be its own. Most of the time when that happens I just go "meh I'll do it after, I will totally remember to do it after". Works 2 out of 10 times. :P
In addition: While Lazygit is amazing, as is most git-GUI things in most IDEs (let's be honest), I do think it is very good to understand what your GUI does in the background so I would always recommend people to learn "manual" git commands, at least add, diff, status, fetch, pull, push, commit and stash - as well as understand what actually happens when you use them. Otherwise you'll end up in a bind when your button (or CLI-option) doesn't work and you have no idea why.
When chris typed git ci, an editor opened up that let them write the message, do anyone how to recreate that?
Oh sorry I didn’t mention in the video! It’s an alias for git commit -v
Thank you! This has totally changed how I use git
I use tig for this, I find it easier than going through the hunks sequentially. I'm neither young or hip enough to use lazygit.
Lol same for me (with lazygit)
Hi! Can you share your config of buffer line (or tab line?) on the top of terminal? It’s really beautiful! Thanks you!
Sure! I’m using Dracula: draculatheme.com/tmux
I see my status bar to top position and turn on the option to display the status bar in Dracula
Thanks a lot!!!
I didn't know about that. Gonna practice this from now on =D
Completely new to me, very usefull and very well explained, thanks!
simple and to the point, thank you
willl definitely use this :)
Awesome!!
Thanks for the helpful video. One Question: Can you share your git aliases ?
Sure! Will do soon
Almost any gui client allows that such as git-gui or the built-in gui in vs code like you just select lines and add them to stage with right click.
The problem with all that is it's not a universal solution, at first I also thought it would allow me to rewrite the whole history of my pet projects but when I tried to do that I encountered some problems like there are sometimes "garbage" changes like dependencies in configuration files, configuration changes you never bothered to look up or just dozens of imports from a bunch of official libraries, especially the latter. I called these changes garbage bc they are meaningless when you look at them in git client while making commits.
I love your narrating
I love YOU
I love that you use correct commit messages, stating what _this commit_ does (if applied), not what _you_ did in your workday.
No, they are using the truncated infinite / imperative tense (add gitsigns vs adds gitsigns), they are giving an order to the commit to do something, which is the worst possible type of messags in my opinion, past or present tense are more intuitive.
I tried doing this for hours in vscode, failed miserably. I tried for hours but no help. Then I used git patch and wow
The git client for emacs: magit does this 🙌
Better use 's' to split a hunk instead of edit. Much faster.
Or ... we could use Lazygit to do that (as I see you're using it as well 🙂)
Love lazygit! It’s also nice to understand what happens under the hood
It is indeed, that's why it's called "lazy" git; you forget these things (although its command history pane is really useful to learn stuff in case someone wants to)
awesome, ty
nice
Great content but waaay waaayy too fast.
clickbait.
When the thumbnail hints at a graphical info aid but there aint any in the content.
-_-
Not to worry, you can do the same thing in VSCode