A Brief Introduction to Version Control

Date:

XKCD Git

Improve your Laboratory

Think of the computer as a physicist would his laboratory–you may use it to check your existing ideas about the construction of the world, or as a tool for discovering new phenomena which then demand new ideas for their explanation.

  • Tristan Needham in Visual Complex Analysis

It is my belief that version control will vastly improve the reach and efficiency of your laboratory. This page serves as a companion to a talk I am organizing to introduce version control. If you are new to version control I have compiled here my favorite resources and repositories. While I am not an expert in any of the mentioned tools I do recognize that they have provided tremendous value to my work and hope you find the same.

Before the Talk

  • Make sure you have git running on your laptop. see instructions
  • Brush up on how to use the command line. Here

Attend the Talk

Measuring Stick

  • Watch this tutorial Start either at beginning or 15 minutes based on audience comfort.
  • If the command line interface is not for you, try GitKraken: GitKraken Website
  • $watch -n 0.1 --color "git log --all --decorate --graph --color --abbrev-commit --pretty=short"

After Talk

  1. Look through the cool GitHub projects mentioned below.
  2. Read Chapter 1-3 and 7 of Pro Git.
  3. Write code and collaborate
  4. Watch intermediate tutorial

Cool GitHub Projects to Look At

Reference Resources

  1. Use the command: $git <command of interest> --help.
  2. Pro Git.
  3. How to collaborate
  4. Resolve merge conflicts

Other Topics of Interest and GitHub Tools

Hot takes

  • Windows Is aweful
  • Stop using Matlab!!
  • Vim is king
  • Make less code comments