Intro to Git and GitHub
10/10/14 (technical)

What is Git?

Git is an incredibly popular free open source distributed version control. Like any version control software, it helps to track and merge changes to projects.

Imagine you're working with a team on a project comprised of hundreds of folders and thousands of files. Emailing around those files and keeping track of who has made changes to what would be nearly impossible!

What are the benefits of Version Control?

Version control formalizes the process of making and merging changes to a project by teammates. Changes can be merged to the master version or rejected by the team to ensure everyone is on the same page. This makes it much easier for a team to collaborate on any given project!

Git is particularly popular form of version control because it is easy to learn and lightening fast

(and, of course, free and open source). A powerful combination.

How does Git help you keep track of changes?

Git lets users "fork" the master version of the file into different versions called branches. Any master version might have hundreds of branches. Teams are then able to work on editing specific branches without compromising the master. If the changes on any branch are good and ready to go, they can be added back into the master. The changes are reflected in the log and can be reviewed later if any problems arise.

Users can pull down either the master version or any of the branches to their own computer and work on their changes. Those changes can then be added back to the branch or master. Depending on their role on the project the user's changes might first need to be reviewed and approved by another teammate.

Why use GitHub to store your code?

GitHub is a online repository for Git projects, think of it as dropbox for Git. Using GitHub means anyone anywhere can go online and start collaborating on a project. GitHub has a lot of additional functionality that allows users to manage a project right in their browser.