Skip to main content

University Library, University of Illinois at Urbana-Champaign

Introduction to GitHub: Home

This guide introduces users to the GitHub Desktop application and provides an overview of basic GitHub functions and workflows. The guide is based on the Savvy Researcher workshop of the same name.

Introduction

Version Control

Simply put, version control is a method for keeping track of different versions of files. Most people have engaged in some form of version control, even if they are not familiar with the term. This could be as simple as creating different files for different versions of documents (e.g. text1.txt, text2.txt, etc.). While implementing version control in this manner is fairly intuitive, it has some drawbacks. It can lead to cluttered folders, it can be difficult to keep track of what changes are made across different versions, and it can make collaborating difficult.

Ideally, a version control system will:

  • track changes over the course of working with a file
  • record what changes were made, and why they were made
  • allow the user to make changes to a file without running the risk of losing the previous version
  • allow users to integrate changes across different versions of files
  • allow users to revert to older versions of files

Most importantly, a good version control system will make a user's work simpler and easier.

Git and GitHub

While "git" and "GitHub" are sometimes used interchangeably, they actually refer to two different things. Git is a particular implementation of version control. It was created by Linus Torvalds to help manage Linux source code.

GitHub is a company that hosts git repositories and provides software for managing git. GitHub is commonly used for managing and sharing different versions of code for programming projects, but it can be used just as effectively for version control of other types of files, such as text documents.

Users can interact with git and GitHub using the command line, on the web through github.com, or with the GitHub desktop application (available at desktop.github.com). This guide covers these second two options.

Features of GitHub

Implementing version control with GitHub allows you to

  • Track changes over the course of working on document or file
  • Create records to describe the changes you have made, and why you have made them
  • Safely try out different things without compromising the integrity of a stable version
  • Integrate changes across different versions of documents
  • Go back to previous versions of files

What this Guide Covers

  • Creating a GitHub account and requesting a student developer pack
  • Installing the GitHub desktop application
  • Creating and using repositories
  • Making commits (i.e. records that document specific versions of files)
  • Syncing your commit to GitHub
  • Recovering deleted files

Scholarly Commons

Scholarly Commons's picture
Scholarly Commons
Contact:
306 Main Library
Drop-ins welcome
Monday-Friday 9am-6pm
Phone: 217-244-1331
Website
Social:Twitter Page