class: center, middle, inverse, title-slide # Meet the toolkit:
version control and collaboration ##
College of the Atlantic ###
https://coa-dataviz.netlify.app/
--- ## Course toolkit <br> .pull-left[ ### .gray[Course operation] .gray[ - [coa-dataviz.netlify.app](https://coa-dataviz.netlify.app/) - [Google classroom](https://classroom.google.com/) ] ] .pull-right[ ### .gray[Doing data science] - .gray[Programming:] - .gray[R] - .gray[RStudio] - .gray[tidyverse] - .gray[R Markdown] - .pink[Version control and collaboration:] - .pink[Git] - .pink[GitHub] ] --- class: middle # Git and GitHub --- ## Git and GitHub .pull-left[ <img src="img/git-logo.png" width="25%" style="display: block; margin: auto;" /> - Git is a version control system -- like “Track Changes” features from Microsoft Word, on steroids - It's not the only version control system, but it's a very popular one ] .pull-right[ <img src="img/github-logo.png" width="25%" style="display: block; margin: auto;" /> - GitHub is the home for your Git-based projects on the internet -- like DropBox but much, much better - We will use GitHub as a platform for web hosting and collaboration (and as our course management system!) ] --- ## Versioning <img src="img/lego-steps.png" width="70%" style="display: block; margin: auto;" /> --- ## Versioning ### with human readable messages <img src="img/lego-steps-commit-messages.png" width="60%" style="display: block; margin: auto;" /> --- ## Why do we need version control? <img src="img/phd_comics_vc.gif" width="35%" style="display: block; margin: auto;" /> --- ## How will we use Git and GitHub? <img src="img/whole-game-01.png" width="100%" style="display: block; margin: auto;" /> --- ## How will we use Git and GitHub? <img src="img/whole-game-02.png" width="100%" style="display: block; margin: auto;" /> --- ## How will we use Git and GitHub? <img src="img/whole-game-03.png" width="100%" style="display: block; margin: auto;" /> --- ## How will we use Git and GitHub? <img src="img/whole-game-04.png" width="100%" style="display: block; margin: auto;" /> --- # Git and GitHub tips - There are millions of git commands -- ok, that's an exaggeration, but there are a lot of them -- and very few people know them all. 99% of the time you will use git to add, commit, push, and pull. -- - We will be doing Git things and interfacing with GitHub through RStudio, but if you google for help you might come across methods for doing these things in the command line -- skip that and move on to the next resource unless you feel comfortable trying it out. -- - There is a great resource for working with git and R: [happygitwithr.com](http://happygitwithr.com/). Some of the content in there is beyond the scope of this course, but it's a good place to look for help. --- ## Tour: Git and GitHub - Create a GitHub account - Verify your GitHub email - Adjust your GitHub settings for a more pleasant GitHub experience - Settings > Emails > Uncheck "Keep my email address private" - Settings > Emails > Update name and photo <br> *In the lab...* *Work with R, RStudio, Git, and GitHub together!*<sup>+</sup> .footnote[ <sup>+</sup>Just like a real data scientist! ] --- ## Acknowledgements * This course builds on the materials from [Data Science in a Box](https://datasciencebox.org/) developed by Mine Çetinkaya-Rundel and are adapted under the [Creative Commons Attribution Share Alike 4.0 International](https://github.com/rstudio-education/datascience-box/blob/master/LICENSE.md)