Course: Mastering Git from scratch
In this course you will find the commands needed to get started with Git, but also those to do more advanced tasks to increase your productivity (and safety) when you are working on your projects.
11 Advanced branching in Git
Master Git branches: fast-forward merges, merge strategies, branch management with git branch and git switch, and how to recover from a detached HEAD state.
12 Stashing Changes with git stash
Need to switch branches urgently but have unfinished changes? Git stash is your lifesaver. Learn how to temporarily save your work and recover it whenever you need it.
13 Getting started with Git remotes
Git is a decentralized service, so you won't find the typical client-server architecture. Today you will learn how Git works with its remote nodes.
14 Creating our first repository on GitHub
Learn how to create your first repository on GitHub step by step. Discover how to set up a new project, add files, and make your first commit.
15 Working with Git Remotes
Learn to manage Git remotes: add, remove, rename, and inspect them with git remote. Understand tracking branches and how to work with multiple remotes.
16 Obtaining and cloning new commits from a Git repository
Discover how to clone remote repositories and keep them synchronized with git pull. Learn to work as a team from different machines.
17 Push and fetch in Git: syncing with the remote
Learn to send and receive changes in Git with git push and git fetch. Understand the difference between fetch and pull, how to use --force-with-lease, and why git push --force is a bad idea.
18 How to undo commits in Git
Learn how to undo commits in Git using reset and revert. Discover when to use each command and how to avoid conflicts in remote repositories.
19 Rewriting History with git rebase
Learn what rebase is in Git, when to use it instead of merge, how to resolve conflicts during the process, and the golden rule you must never break.
20 Interactive Rebase in Git: Edit Your History Like a Pro
Learn how to use git rebase -i to reorder, combine, rename, and delete commits before integrating your work. Take full control of your history, commit by commit.