You can recognize how basic git workflow with local branches and remote branches work. Where to push, where to pull from. Hot to connect to master.
You can save temporarily unstaged or uncommited changes in case you want to check immediately another branch or do something different. Additionally you can recover these changes and get them back when needed.
You can bring new changes from another branch and add them to your own local branch without changing the order. Thus you have everything clean, all code from both branches, but your commits are on top of the others in your branch. Additionally you can tell the difference between merging a branch and rebasing a branch and when the latter is better option than the first.
You can bring a specific commit by hash from another branch to your local branch and put this commit on top of your branch. Thus you have also code from a specific commit of a colleague to your branch and you can work with. Additionally you can tell the difference between cherry-picking and rebasing.