Advanced

The following Git skills and techniques may be considered advanced level.

Advanced Git

  • Rebasing: Know how to rebase a branch to update it with changes from another branch, while maintaining a clean history.

  • Cherry-picking: Know how to apply specific changes from one branch to another, without merging the entire branch.

  • Squashing commits: Know how to combine multiple commits into a single commit, to create a more coherent commit history.

  • Stashing: Know how to temporarily save changes that are not yet ready to be committed, so that you can work on other tasks without losing your progress.

  • Git hooks: Know how to create custom scripts that are automatically run by Git at specific times, such as before a commit or push.

  • Git submodules: Know how to use Git submodules to include one repository as a subdirectory of another repository, to better manage complex projects.

  • Git bisect: Know how to use Git bisect to find the commit that introduced a bug, by systematically testing different commits until the bug is found.