class: center, middle, inverse, title-slide # Using Git and GitHub ## 💪 ### Tyson S. Barrett --- class: inverse # Outline -- ## What is Git? -- ## What is GitHub? -- ## Getting Started --- class: inverse, middle, center # Git --- # Git Git is a version control system (kind of like track-changes in Word) - It works with plain text files (like Rmd) - Looks for changes in the file and keeps track of the changes - Allows you to see changes over time and return to previous versions --- class: inverse, middle, center # GitHub --- background-image: url("GitHub-Mark.png") background-position: 90% 55% background-size: 300px # GitHub One of the most popular online portals of Git. .pull-left[ #### Repositories A collection of files and folders (generally within a single project). #### Editing Online Can edit documents in the browser #### README File Each repository should have a README.md file. It provides simple accessibility to your repository. (This will make more sense soon.) ] --- class: inverse, middle, center # Getting Started --- # Install Git [https://git-scm.com/book/en/v2/Getting-Started-Installing-Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) --- # Get a GitHub Account ## [github.com](https://www.github.com) A free account let's you do most things - No private repositories though ## OSF A new, free resource that incorporates GitHub, Dropbox, and other cool features ### [osf.io](https://osf.io) --- # Goal: Reproducibility and Fewer Headaches These tools can increase your reproducibility 1. Easier organization 2. Version control 3. Less pain reverting to previous version 4. Easy to share your code and data (when appropriate) with publications 5. Another medium through which your work is shown 6. Less stress in your work (less searching for files, not being able to reproduce an earlier analysis, etc.) --- background-image: url("GitHubcom.png") background-position: 99% 55% background-size: 500px # Practice with GitHub Let's create a new repository .pull-left[ 1. Create a README file 2. Sync to your computer (optional) 3. Create an RMarkdown file that will be in the repository 4. Commit changes ] --- # R Packages ### Our next topic builds on our ability to use GitHub ### R Packages are easier to maintain in GitHub than simply on your computer ### We'll start this next topic after a five minute break