A starting point for discovering the wonderful world of Git and GitHub in the context of Research Workflows.
- Sign up for github, and and check for the verification email.
- Install git on your laptop: https://git-scm.com/downloads
We'll be walking through a standard tutorial together. We won't cover all the material, but enough to get you started with the fundamentals and use this as a way to work through your workflow and answer questions that you have:
Software Carpentry tutorial: https://swcarpentry.github.io/git-novice/
To simulate a collaborative research workflow, we will also be using a remote cloud environment in addition to your laptop.
Any time you need quick access to a shell command line somewhere other than your laptop you can use (for free!) Google Cloud Shell.
Try launching Cloud Shell now in your browser by clicking this link:
https://console.cloud.google.com/home/dashboard?cloudshell=true
Then run these commands in the Cloud Shell window:
git clone https://github.com/dlab-berkeley/git-fundamentals/
cd git-fundamentals
./rstudio-on-gcp.sh
Note: The tools below are other interesting and useful tools that you may wish to explore, however they are NOT REQUIRED for this workshop. The only install that is required is the the official Git installer.
-
Command line tools:
- For OS X, install the homebrew package manager
- For Windows install the chocolatey package manager
-
GUI tools
- GitHub Desktop App
- SourceTree
- Many others are available, and you can search for even more!
-
Integration for your text editor!
- Atom
- Vim fugitive
- Emacs Magit
- Sublime Text 2
-
To choose a default editor to use with git:
Atom $ git config --global core.editor "atom --wait"
nano $ git config --global core.editor "nano -w"
- Basic commands cheat sheet(s) (Note the links to other cheat sheets!)
- Gamified git
- GitHub sponsors this.
- Where does "help" go from GitHub? Here.
- Linux commands cheat sheet (also mostly works for OS X command line).
- git - the simple guide
- The visual git guide
- Read the Flight rules for Git, a guide for using Git and what to do when things go wrong.
Flight Rules are the hard-earned body of knowledge recorded in manuals that list, step-by-step, what to do if X occurs, and why. Essentially, they are extremely detailed, scenario-specific standard operating procedures.
- A problem-focused exploration of git features is available in @jkitzes' Data Science Lessons
- An IPython notebook (of course!) from @fperez.