Collaborative Software Development

A Gentle Introduction to Git and GitHub

Jason Freels

07 January 2018

Overview

This presentation covers the following concepts

Getting Started with Git & Github

What is Git?

What is GitHub?

Why Should You use Git and GitHub?

For a fast, easy, and stress-free workflow

Your workflow - without Git

Your workflow - with Git

OK, I'm interested in using Git/Github how do I get Started?

Installing Git

Setting up a GitHub account

Configure Git for first time

Understanding Version Control Systems

The Basics of Version Control Systems

What are version control systems?

Why should some use a version control system?

What is a Centralized Version Control System (CVCS)?

What is a Decentralized (aka Distributed) Version Control System (DVCS)?

What are the advantages of using a DVCS instead of a CVCS?

Using Git - Overview

Expectation management - this tutorial won't cover all use cases

Many Ways To Use Git

The basic process of Git

The basic Git commands you'll use/need

Using Git commands

add <- function(x, y) { x * y }

Initializing a repo in an existing directory

cd C:/Users/greenweb/Desktop/arithmetic
git init
git add --all
git commit -m "first commit"

The .git directory

Using Git - Syncing with GitHub

Overview

Using Git - Making changes and pushing them to GitHub

Fix the typo

git add --all
git commit -m "fix typo"
git push origin master

All done!

Any questions?