What is Git?
Git is version control software that is free and open source, and allows you to track changes to your files. It helps maintain a history of what changed, who changed it, and why the changes were made.
Git is installed in the command line of your lab and there is also a Git client within RStudio.
Version control can be very useful and helpful, especially if you are annoyed by the proliferation of file names like analysis.Rmd
, analysis_final.Rmd
, analysis_feb_changes.Rmd
, analysis_resp_reviewer1.Rmd
, and so on.
Learning Git can be tricky, because a lot of the training out there for Git is intended for professional software developers who have special requirements. This audience often works a large team and has public software "releases" to software owners. They need tight controls, very specific methods, and have their own jargon when it comes to the use of Git.
That said, we think the benefits of using Git outweigh the sometimes intimidating learning curve. There are a number of university classes, online courses and live workshops that go in depth about how to use Git (a kind of software) and GitHub (a website that many people who use Git use for working with their files). Simply search for courses at the university or MOOC (e.g. Coursera) you prefer to use.
If you prefer something a bit more "just in time", however, we suggest the version control modules from the DART (Data and Analytics for Research Training) program.
DART includes dozens of data science modules that are each 1 hour or less in duration and with a narrow focus and clear learning objectives. They are asynchronous and you can take them at any time!
Arcus Education's DART program is the result of an NIH grant aimed at educating biomedical researchers. If you'd like to learn more about DART, fill out our interest form or email us at [email protected].
Training modules:
- Intro to Version Control
- Setting Up Git in Mac and Linux
- Setting Up Git in Windows
- Creating a Git Repository
- Exploring the History of a Git Repository
Additionally, beyond the NIH grant, we have other articles and miscellany we suggest, whether those are resources we've created in Arcus, or things we recommend from the larger R community.
Arcus Articles:
Version Control Curriculum Git 101: Text-based article about the basics Git 102: A step-by-step guide for creating your first repository
External Resources:
For R users, check out this excellent resource: Happy Git with R. It is a full and detailed set of instructions for how to get started using git if you're already using R and RStudio. This will be very helpful in your scientific lab!
GitHub publishes lots of great training content for Git. For a quick overview of how to get started with using Git on the command line check out the video below: