Git (Version Control System)

Version control is a syste that records changes to a file or set of files over time so that you can recall specific versions later. If you are a graphic or web designer and want to keep every version of an image or layout (which you would most certainly want to), a Version Control System (VCS) is a very wise thing to use. It allows you to revert files back to a previous state, revert the entire project back to a previous state, compare changes over time, see who last modified something that might be causing a problem, who introduced an issue and when, and more.

Since its birth in 2005, Git has evolved and matured to be easy to use and yet retain these initial qualities. It’s incredibly fast, it’s very efficient with large projects, and it has an incredible branching system for non-linear development

Syllabus

  • Local Version Control Systems
    • Centralized Version Control Systems
    • Distributed Version Control Systems
  • Git Basics
    • Installing Git
    • Getting a git Repository
      • Intializing a repository in an existing Directory
      • Cloning an Existing Repository
    • Recording Changes to the Repository
      • Checking the status of your files
      • Tracking New files
      • Staging Modified files
      • Viewing Your Staged and Unstaged Changes
      • Committing your changes
      • Skipping the Staging Area
      • Removing Files
      • Moving files
    • Viewing the Commit History
    • Undoing Things
      • Changing your last commit
      • Unstaging a Staged file
      • Unmodifying a Modified File
    • Working with Remotes
      • Showing Your Remotes
      • Adding remote Repository
      • Pushing to Remotes
  • Git Branching
    • Branching
    • Basic Branching and Merging
    • Basic Merge Conflicts
    • Branch Merging Conflicts
    • Branch Management
    • Branching Workflows
      • Long Running Branches
      • Topic Branches
    • Remote Branches
      • Pushing
      • Tracking Branches
      • Deleting Remote Branches