Getting Started with Git and Github


Read below then try it out with this lab: An Introduction to Git and UMN Github.
If you are trying this on your own machine and you don't have Git installed, you will have to install it via the official download site or possibly with Homebrew for the Mac (Google it - it is worth it). See resources below for official git site and some information for Windows users.


Git is source control software, which is an amazing tool to help you with software development. Source control tracks changes to the code in a repository, so that you can see the history of development, and more importantly, allows you to revert to a previous version.

An important aspect to source control is ease of collaborative development or multiple site development. Collaborators can develop code locally on their machines, then push the changes to a remote repository and everyone can incorporate the change to their local version. Similarly, you could develop code on a machine at school, push to a repository, then continue development on your laptop.

Another key to source control is the development along multiple branches. You can split off onto another line of development for either exploratory reasons or to produce different versions of the code.

GIT is a decentralized version of source control, meaning that there is both a local and remote repository, and you need not be connected to the internet to commit to your repo. (Subversion is a popular centralized version of source control.) Many IDE's (integrated development environments) have source control built in, making it even easier to create and maintain a repo for your code.

GITHUB is a web interface to Git. There is a free public version, although this will allow only public repositories, meaning anyone can see your code. You can create private repos if you pay a monthly fee. As a member of the University of Minnesota community, you are provided with a github user account in the enterprise version at https://github.umn.edu/.


RESOURCES