Version control systems (like Git) allow you to retain your science karma (!) over the course of a project
Goals for today: •  Understand what these tools are for •  Create a repository (“repo”) online •  Create a repo from your desktop •  Push a commit •  Fork a repo •  Push an edit to a forked repo •  Done!
The problem that needs solving:
And it doesn’t apply only to code! What is my PhD on again???? I WANT COOKIE DOUGH
Git, a revision control system, lets you: (1) track the history of changes you’ve made (2) keeps your work reproducible (even to you!) (3) helps you keep good documentation and (4) collaborate without writing over others’ work https://github.com/karthik/smb_git/commits/master?page=4
Git, a revision control system, lets you: (1) track the history of changes you’ve made (2) keeps your work reproducible (even to you!) (3) helps you keep good documentation and (4) collaborate without writing over others’ work https://github.com/karthik/esa_data_viz/graphs/contributors
Links: •  https://github.com/ •  github.com/coconn •  Let’s see an example of where PastChristine locked it down for FutureChristine https://github.com/coconn/ cso011code_TanguroN2OLosses/ commits/master
Task 1! •  Log in to your Github profile •  Click “Repositories” •  Click “New” •  Click “Initialize with a README” (best practice) •  Repo to make: A storage area for a personal hero! •  Click “Clone in desktop” •  Save your repo wherever you like on your computer •  Use google images to download a rad image •  Put it in your personal hero folder on your computer •  “Commit and sync” •  Click refresh on your repo online •  You should see the change!
Turn to your neighbor and take 2 minutes to think of a project at work you want to use this system for… Task 2! •  Create a new folder on your computer for that project (OR find that folder if it exists) •  Go to your Github program •  Click “Add a repo” (or “+”, etc.) •  Find that folder! •  Push that folder to Github! •  Click refresh on your Github landing page online •  You should see the new repo!
Task 3! Collaboration! •  Go to https://github.com/ coconn/Friday-Noon-Seminar- Git-Github •  “Fork” my FNS repository •  “Clone” it to your desktop •  Make a file that has your best git/ Github pun in it (.txt, .r, .doc, .pdf, whatever), and push it as a commit to your fork within the Task3-Puns folder •  Click “pull request” (you’re requesting that I, Christine, “pull” your edit into the original repo) •  Done!
Some other slides that I might use as reference follow…
Collaborating with others
Branches

Get Ur Git On: Introduction and getting started with Github

  • 2.
    Version control systems(like Git) allow you to retain your science karma (!) over the course of a project
  • 3.
    Goals for today: • Understand what these tools are for •  Create a repository (“repo”) online •  Create a repo from your desktop •  Push a commit •  Fork a repo •  Push an edit to a forked repo •  Done!
  • 4.
    The problem thatneeds solving:
  • 5.
    And it doesn’tapply only to code! What is my PhD on again???? I WANT COOKIE DOUGH
  • 6.
    Git, a revisioncontrol system, lets you: (1) track the history of changes you’ve made (2) keeps your work reproducible (even to you!) (3) helps you keep good documentation and (4) collaborate without writing over others’ work https://github.com/karthik/smb_git/commits/master?page=4
  • 7.
    Git, a revisioncontrol system, lets you: (1) track the history of changes you’ve made (2) keeps your work reproducible (even to you!) (3) helps you keep good documentation and (4) collaborate without writing over others’ work https://github.com/karthik/esa_data_viz/graphs/contributors
  • 8.
    Links: •  https://github.com/ •  github.com/coconn • Let’s see an example of where PastChristine locked it down for FutureChristine https://github.com/coconn/ cso011code_TanguroN2OLosses/ commits/master
  • 9.
    Task 1! •  Login to your Github profile •  Click “Repositories” •  Click “New” •  Click “Initialize with a README” (best practice) •  Repo to make: A storage area for a personal hero! •  Click “Clone in desktop” •  Save your repo wherever you like on your computer •  Use google images to download a rad image •  Put it in your personal hero folder on your computer •  “Commit and sync” •  Click refresh on your repo online •  You should see the change!
  • 10.
    Turn to yourneighbor and take 2 minutes to think of a project at work you want to use this system for… Task 2! •  Create a new folder on your computer for that project (OR find that folder if it exists) •  Go to your Github program •  Click “Add a repo” (or “+”, etc.) •  Find that folder! •  Push that folder to Github! •  Click refresh on your Github landing page online •  You should see the new repo!
  • 11.
    Task 3! Collaboration! • Go to https://github.com/ coconn/Friday-Noon-Seminar- Git-Github •  “Fork” my FNS repository •  “Clone” it to your desktop •  Make a file that has your best git/ Github pun in it (.txt, .r, .doc, .pdf, whatever), and push it as a commit to your fork within the Task3-Puns folder •  Click “pull request” (you’re requesting that I, Christine, “pull” your edit into the original repo) •  Done!
  • 13.
    Some other slidesthat I might use as reference follow…
  • 14.
  • 15.