Git and GitHub

  1. What is Git and Gitlab?
    1.1 History of Git
    1.2 Design Principles
    1.3 Distributed Version Control
  2. Installing Git
    2.1 Account Setup
    2.2 Installing Sourcetree Git GUI
  3. Git File Management
    3.1 Common Git Commands
    3.2 Configuring Git
    3.3 Creating Repositories
    3.4 Creating a Commit
  4. Branching
    4.1 Visualising Branches
    4.2 Branch Naming Conventions
    4.3 Creating a new Branch
    4.4 Handling Merge Conflicts
  5. Pull Requests
    5.1 Creating a Merge Request
    5.2 Accepting a Merge Request
    5.3 Rejecting a Merge Request
  6. Common Workflows
    6.1 Centralised Flow
    6.2 GitHub Flow
    6.3 Git Flow
  7. Advanced Topics
    7.1 SVN Branching vs Git Branching
    7.2 Inside a Local Repository
    7.3 The reflog Time Machine
    7.4 What is HEAD?
    7.5 Amending Commits
  8. Do and Don’t
    8.1 Checking in Binary Files
    8.2 Rewriting history
    8.3 Force Push
    8.4 Commit Descriptions
    8.5 Brain Overload