Skip to content

Instantly share code, notes, and snippets.

@cfriedline
Created August 21, 2014 09:27
Show Gist options
  • Save cfriedline/332f4add60c34c95c35a to your computer and use it in GitHub Desktop.
Save cfriedline/332f4add60c34c95c35a to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"worksheets": [
{
"cells": [
{
"metadata": {
"slide_helper": "slide_end",
"internals": {
"slide_type": "subslide",
"slide_helper": "subslide_end"
},
"slideshow": {
"slide_type": "slide"
}
},
"cell_type": "code",
"input": "%automagic on\n%rehashx",
"prompt_number": 12,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "\nAutomagic is ON, % prefix IS NOT needed for line magics.\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"slide_type": "subslide",
"slide_helper": "subslide_end"
},
"slideshow": {
"slide_type": "slide"
}
},
"cell_type": "markdown",
"source": "#Version Control"
},
{
"metadata": {
"internals": {
"slide_type": "subslide",
"frag_helper": "fragment_end",
"frag_number": 3
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "## What is version control?"
},
{
"metadata": {
"internals": {
"frag_number": 3,
"slide_helper": "subslide_end"
},
"slideshow": {
"slide_type": "fragment"
},
"slide_helper": "subslide_end"
},
"cell_type": "markdown",
"source": "<center>![](http://www.datamation.com/imagesvr_ce/3829/version-control.jpg)</center>"
},
{
"metadata": {
"internals": {
"slide_type": "subslide",
"frag_helper": "fragment_end",
"frag_number": 3
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "## What is version control?"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 5
},
"slideshow": {
"slide_type": "fragment"
}
},
"cell_type": "markdown",
"source": "* A record of changes to a file or set of files"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 6
},
"slideshow": {
"slide_type": "fragment"
}
},
"cell_type": "markdown",
"source": "* Allows changes to be recovered a certain point in time"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 7
},
"slideshow": {
"slide_type": "fragment"
}
},
"cell_type": "markdown",
"source": "* Nothing is ever lost after committing it"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 8
},
"slideshow": {
"slide_type": "fragment"
}
},
"cell_type": "markdown",
"source": "* System of blame (snicker)"
},
{
"metadata": {
"slide_helper": "slide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_helper": "subslide_end",
"frag_number": 9
},
"slideshow": {
"slide_type": "fragment"
}
},
"cell_type": "markdown",
"source": "* Many variations on a theme\n * local file copies\n * centralized systems\n * decentralized systems"
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 9
},
"slideshow": {
"slide_type": "slide"
}
},
"cell_type": "markdown",
"source": "# Version control with git"
},
{
"metadata": {
"slideshow": {
"slide_type": "subslide"
},
"internals": {
"slide_type": "subslide",
"frag_helper": "fragment_end",
"frag_number": 9,
"slide_helper": "subslide_end"
},
"slide_helper": "subslide_end"
},
"cell_type": "markdown",
"source": "<center>![](trends.png)\n\n<p><strong>\n<font color=blue>git</font><br>\n<font color=red>svn</font><br>\n<font color=orange>hg</font><br>\n<font color=green>cvs</font><br>\n</strong>\n</center>\n"
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 9
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "##What is git?\n![](https://lh3.googleusercontent.com/-89ozPMrQDIQ/U9uP-bfCVQI/AAAAAAAENY8/126AHEaJQRo/w960-h720/git-hilbert.jpg)"
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 9
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "<center>\"Many forms of Government have been tried, and will be tried in this world of sin and woe. No one pretends that democracy is perfect or all-wise. Indeed it has been said that democracy is the worst form of Government except for all those other forms that have been tried from time to time . . .\"\n</center>\n\n<p><center>\n--Churchill (quoting another)\n\n</center>"
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 9
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "<center>\"Many forms of **version control** have been tried, and will be tried in this world of sin and woe. No one pretends that **git** is perfect or all-wise. Indeed it has been said that **git** is the worst form of **version control** except for all those other forms that have been tried from time to time . . .\"</center>"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"frag_number": 9
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "## What is git (really, more or less)?\n\n* Distributed Version Control System (DVCS)\n* Snapshot vs files\n* Database integrity (checksums)\n* Working isolation (i.e., branches)"
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_helper": "subslide_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "fragment"
}
},
"cell_type": "markdown",
"source": "* PITA?"
},
{
"metadata": {
"slide_helper": "subslide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "## Core concepts of git\n\n1. The **repository** (clone, fetch/merge (pull), push)\n1. The **working directory** (edit, checkout)\n1. The **staging area** (add, commit)"
},
{
"metadata": {
"slide_helper": "slide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "subslide"
}
},
"cell_type": "markdown",
"source": "## Sections of a git project\n\n![](http://git-scm.com/figures/18333fig0106-tn.png)\n<center><span style=\"color:gray; font-size:0.5em;\">git-scm.com/book</span></center>"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"frag_number": 16
},
"slideshow": {
"slide_type": "slide"
}
},
"cell_type": "markdown",
"source": "## Example"
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "head /Users/chris/.gitconfig",
"prompt_number": 13,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "[user]\r\n\tname = Chris Friedline\r\n\temail = [email protected]\r\n\tsigningkey = 90859AFF\r\n[color]\r\n\tui = true\r\n[push]\r\n\tdefault = simple\r\n[core]\r\n\texcludesfile = /Users/chris/.gitignore\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "mkdir /Users/chris/science/swc/2014-08-21-upenn_examples",
"prompt_number": 14,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "mkdir: /Users/chris/science/swc/2014-08-21-upenn_examples: File exists\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "cd ~/science/swc/2014-08-21-upenn_examples/",
"prompt_number": 15,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "/Users/chris/Drive/Documents/science/swc/2014-08-21-upenn_examples\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "pwd",
"prompt_number": 16,
"outputs": [
{
"output_type": "pyout",
"prompt_number": 16,
"metadata": {},
"text": "u'/Users/chris/Drive/Documents/science/swc/2014-08-21-upenn_examples'"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "echo \"Test me\" > example.txt",
"prompt_number": 17,
"outputs": [],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "head example.txt",
"prompt_number": 18,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "Test me\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "git init",
"prompt_number": 19,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "Reinitialized existing Git repository in /Users/chris/Drive/Documents/science/swc/2014-08-21-upenn_examples/.git/\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "git status",
"prompt_number": 20,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "On branch master\r\nnothing to commit, working directory clean\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "git add example.txt",
"prompt_number": 21,
"outputs": [],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "git status",
"prompt_number": 22,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "On branch master\r\nnothing to commit, working directory clean\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"internals": {
"frag_helper": "fragment_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "git commit -m \"added example\"",
"prompt_number": 23,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "On branch master\r\nnothing to commit, working directory clean\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"slide_helper": "slide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_helper": "subslide_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "-"
}
},
"cell_type": "code",
"input": "git log",
"prompt_number": 24,
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "\u001b[33mcommit 241be63f4b81ffbb04e3ce2e51e048eac9a68e3b\u001b[m\r\nAuthor: Chris Friedline <[email protected]>\r\nDate: Wed Aug 20 10:58:24 2014 -0400\r\n\r\n added example\r\n"
}
],
"language": "python",
"trusted": true,
"collapsed": false
},
{
"metadata": {
"slide_helper": "slide_end",
"internals": {
"frag_helper": "fragment_end",
"slide_type": "subslide",
"slide_helper": "subslide_end",
"frag_number": 16
},
"slideshow": {
"slide_type": "slide"
}
},
"cell_type": "markdown",
"source": "##Exercise #1\n\n[http://bit.ly/cjf-swc-git01](http://bit.ly/cjf-swc-git01)"
}
],
"metadata": {}
}
],
"metadata": {
"name": "",
"celltoolbar": "Slideshow",
"signature": "sha256:88b2ee421de9cc3bb5857c27b89ad554cbfae0172986479820614206584faad6"
},
"nbformat": 3
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment