Marco, this video was so good, I watched it twice. It's hard to make a video like this: short but not too short, meaningful examples without being overwhelmed by detail. You nailed it.
Nice tutorial, I didn't know the third way of rebasing. You asked for favourite git tricks: select any two commits in the log (tree view) and select "Compare..." from the context menu. Very useful for e.g. to check whether the outcome of interactively rebasing and squashing a branch is identical to the original version.
Nice and concise video, good job. Two other great visual features that I like in IntelliJ are "Stash/Unstash uncommitted changes" and "Annotate with Git Blame".
When using the “pull into using rebase” feature, why did you choose the origin/main under remote branches and not the main branch under local branches?? A related question is, after the ‘pull’ command finishes, will “local” main be 100% in sync with origin/main under remote branches?
About the first trick, it is nice to rebase and keep it a straight line when working on the feature branch alone. But if the feature branch is also shared with teammates, rebasing and force push to origin is a bad idea right?
Yup, plain force pushes are. In that case you should _always_ --force-with-lease (which IntelliJ IDEA btw does as a default), but the more teammates you share your branch with, the more commits you have, that pretty soon is also no real option anymore.
Hi Marco Why did you abandon your "Marco Behler" channel and started a new one without saying a word? I accidentally found this one)) Consider making a short video there, I guess a lot of your viewers will be interested in this one. Actually I wanted to add a couple of notes regarding the force push. First one is an advice to make a 5 second pause when the force push dialog appears, reread the branch name, think if there is the latest version of the branch locally and only then press "Force Push" button. Because if the developer mess up at this point it could be hard to restore the lost commits. (Yeah I know about reflog but it has a quite steep learning curve IMHO.) Second it worth to mention if the developer does a force push on the branch and some other developer works on the same branch this second developer will be forced to do a hard reset on remote to synchronize the changes. Which is quite inconvenient especially if he has his own changes that are not yet pushed to remote. Or maybe you know some tricks how can multiple developers work with force pushes one the same branch?
Hey Yuri, I guess since you are the ...fifth person or so asking I'll have to create a small video on the other channel which explains it :) Will do! Regarding force push. What I should have shown earlier in this video (and which actually comes _right after_) the force push section: In the IntelliJ log, you see that the "force push" button actually does a "force push --force-with-lease", which will protect against the scenarios you mentioned. (Though that won't help much if the user just clicks aways the next dialog windows that pop up, prompting him to potentially really force the push). Actually, I might just be tempted to create another short video just on the dynamics of pushing and the scenarios you mentioned, because there's much to be said about it. Thanks for your feedback!
Thanks, that's useful! I never saw the bottom right menu, it's strange they hide it so far away. A little remark, your face is hiding the most relevant part of the screen, though it was possible to read the essential information. Perhaps it would be better placed at the top right, and maybe smaller?
Glad to hear! We've had tons of discussions & opinions on face, no face, location etc etc. Usually it's in the lower right corner because there's not much happening there, for this video we had to put it on the left. We'll see what happens in the future :)
Marco, this video was so good, I watched it twice. It's hard to make a video like this: short but not too short, meaningful examples without being overwhelmed by detail. You nailed it.
Thanks, Paul, really!
This channel is so underrated and under-appreciated. Marco is doing such a fantastic job!
Thank you for the very kind words :)
Nice tutorial, I didn't know the third way of rebasing. You asked for favourite git tricks: select any two commits in the log (tree view) and select "Compare..." from the context menu. Very useful for e.g. to check whether the outcome of interactively rebasing and squashing a branch is identical to the original version.
Great tip! Thanks!
Nice and concise video, good job. Two other great visual features that I like in IntelliJ are "Stash/Unstash uncommitted changes" and "Annotate with Git Blame".
Yep, two very nice features as well!
When using the “pull into using rebase” feature, why did you choose the origin/main under remote branches and not the main branch under local branches?? A related question is, after the ‘pull’ command finishes, will “local” main be 100% in sync with origin/main under remote branches?
good show Marco kept going PRO
Lovely tutorial Marco❤️ Thank you for this
Glad you liked it!
Great Video! I always used merge instead of rebase. This will change now.
Great to hear!
Thank you, Marco! As always - very useful
Glad to hear that!
Great job! Thanks a lot
Very useful video!
woow, third option for rebase is awesome!
Right?! For whatever reason I also only learned about it recently.
@@MarcoCodes Third time's a charm :)
Thanks a lot
subscribed
wow, great tutorial! Thank you! ❤
Glad you like it!
About the first trick, it is nice to rebase and keep it a straight line when working on the feature branch alone.
But if the feature branch is also shared with teammates, rebasing and force push to origin is a bad idea right?
Yup, plain force pushes are. In that case you should _always_ --force-with-lease (which IntelliJ IDEA btw does as a default), but the more teammates you share your branch with, the more commits you have, that pretty soon is also no real option anymore.
discovered you by just typing java logging reddit in google
and ooooh booooooi
Bro, you're f***ing saint!!!
:)
Hi Marco
Why did you abandon your "Marco Behler" channel and started a new one without saying a word? I accidentally found this one))
Consider making a short video there, I guess a lot of your viewers will be interested in this one.
Actually I wanted to add a couple of notes regarding the force push.
First one is an advice to make a 5 second pause when the force push dialog appears, reread the branch name, think if there is the latest version of the branch locally and only then press "Force Push" button. Because if the developer mess up at this point it could be hard to restore the lost commits. (Yeah I know about reflog but it has a quite steep learning curve IMHO.)
Second it worth to mention if the developer does a force push on the branch and some other developer works on the same branch this second developer will be forced to do a hard reset on remote to synchronize the changes. Which is quite inconvenient especially if he has his own changes that are not yet pushed to remote. Or maybe you know some tricks how can multiple developers work with force pushes one the same branch?
Hey Yuri,
I guess since you are the ...fifth person or so asking I'll have to create a small video on the other channel which explains it :) Will do!
Regarding force push. What I should have shown earlier in this video (and which actually comes _right after_) the force push section: In the IntelliJ log, you see that the "force push" button actually does a "force push --force-with-lease", which will protect against the scenarios you mentioned. (Though that won't help much if the user just clicks aways the next dialog windows that pop up, prompting him to potentially really force the push).
Actually, I might just be tempted to create another short video just on the dynamics of pushing and the scenarios you mentioned, because there's much to be said about it.
Thanks for your feedback!
Very useful!
Glad to hear that!
I just realized that git is almost as hard to use as vim
Git is like a an operating system within an operating system.
Need more tutorials.
More more more :) ...are coming.
Love the thumbnails #dontListenToRedditHaters
YOUR THUMBNAILS MAKE ME WANT TO STAB MYSELF IN THE EYES! ;)
Thanks, that's useful! I never saw the bottom right menu, it's strange they hide it so far away. A little remark, your face is hiding the most relevant part of the screen, though it was possible to read the essential information. Perhaps it would be better placed at the top right, and maybe smaller?
Glad to hear! We've had tons of discussions & opinions on face, no face, location etc etc. Usually it's in the lower right corner because there's not much happening there, for this video we had to put it on the left. We'll see what happens in the future :)
Sayonara 😅