Here I cover what actually happens when you git rebase. Git rebase is a way to re-apply commits at a different point in git history -- you can think of it as changing a commit's parent but not it's "incremental content". Using rebase in your workflow lets you maintain a linear string of commits which can be useful if/when you need to squash them later.
If you are looking for an effective concise introduction to Git, I highly recommend my "Fundamentals of Git" course on Udemy: https://www.udemy.com/course/fundamentals-of-git/?referralCode=29A4F0806FACFFF594B2
If you or your company is interested in live virtual software and tools training, see https://www.continuoustech.net/training/ for a list of training topics we offer.