
Overview
This is a comprehensive course for people not familiar with any other distributed version control system. It starts with simple exercises for working in a local repository and finishes with practising working in a team.
This course focuses on exercises.
Requirements
Basic knowledge of project development.
Course Outline
Git Basics
- Introduction to Git
- Git Repository
- Recording Changes to the Repository
- Viewing the Commit History
- Undoing Things
- Tagging
Git Branching
- Branching and Merging
- Brance Management
- Branching Workflows
- Remote Branches
- Rebasing
Git on the Server
- The Protocols
- Getting Git on a Server
- Generating SSH Public Key
- Setting up the Server
- Public Access
- Hosted Git (GitHUB)
- Working with Remotes
Distributed Git
- Distributed Workflows
- Contributing to a Project
- Maintaining a Project
Git Tools
- Revision Selection
- Interactive Staging
- Rewriting History
- Debugging with Git (bisect)
- Submodules
- Subtree Merging
Customizing Git
- Git Configuration
- Git Attributes
- Git Hooks