Git is a version control system for tracking changes in computer files and coordinating work on those files among multiple people.
GitHub is a web-based hosting service for version control using git. It offers all the functionality of Git, plus a lot of wonderful extra features. GitHub makes it very easy to share projects across distributed or remote teams and greatly enhances collaboration in collaborative coding and software development. If you're new to Github, learn more through the links below!
It's best to start with the notion that using Git and GitHub should be essential parts of your workflow. The point of a workflow is to work in a manner that is both efficient and effective. Version control will save you countless headaches and adopting it early will allow it to become second nature quickly.
A great read on this is "Excuse me, do you have a moment to talk about version control?"
Here is a great Github fork and pull request video tutorial that goes through a basic workflow in GitHub.
These following resources are fantastic comprehensive guides to working with Git and GitHub, and tie in with using R and RStudio.
- Happy Git and GitHub for the useR
- Version Control with Git from the Software Carpentries
- Free DataCamp Course: Introduction to Git for Data Science
https://services.github.com/on-demand/intro-to-github/
And then here: Basic GitHub Website Instructions
Video from GitHub: GitHub for Beginners
This tutorial: Try Git gives a good explanation of the steps to contributing to a GitHub repo and hands on experience with using Git in the command prompt. Even if you want to use the GitHub website or GitHub Desktop, it will help you understand what the various terms mean.
If you're already acquainted with the basics, Github provides tons of training videos on advanced topics on YouTube.