Skip to content
R for the Rest of Us Logo

Using Git and GitHub with R

What is Git? What is GitHub?

Transcript

Click on the transcript to go to that point in the video. Please note that transcripts are auto generated and may contain minor inaccuracies.

Learn More

The best resource I've found for understanding Git and GitHub comes from this 2016 talk (slides here) by Alice Bartlett of the Financial Times (hat tip to Garrick Aden-Buie of RStudio for telling me about it).

This article by Allison Horst and Julie Lowndes uses some really cute illustrations to discuss the benefits of using Git and GitHub.

I’ve also collected a set of the best Git/GitHub learning materials on the R for the Rest of Us resources page. I’ll refer to several of these individually in later lessons.

Have any questions? Put them below and we will help you out!

You need to be signed-in to comment on this post. Login.

Susan Switzer

Susan Switzer • February 1, 2024

Hi! I am not able to access the R for the Rest of Us resources page. I see the following message: "This site can’t be reached Check if there is a typo in rfortherestofus.test."

David Keyes

David Keyes Founder • February 1, 2024

Sorry about that! I've updated the link, which you can also find here.

Jan Bezuidenhout

Jan Bezuidenhout • January 14, 2025

Hi David. Course was great!

I just have an issue that you can maybe help me with. I work in a team that has just recently started using Git to collaborate on projects. We are trying to make use of these branches in the most efficient way possible so I would like to ask, is there a way that can force a user/assignee of a project to use a specific branch without being in contact with the main branch.

I know it is possible to do it manually or to just develop a best practice of making sure you're not in the main branch at all but for new employees/users joining the projects, they might not be able to keep up with that each time and this can affect what is being deployed on the main branch.

Hope this makes sense, let me know. Thanks!

David Keyes

David Keyes Founder • January 14, 2025

Glad you liked the course! On your question, the automated way to do this is with what's called GitHub branch rules. You can set rules so that, for example, users can only work in branches and the only way to make changes to the main branch is through a pull request. Full disclosure: I've never used branch rules, but they seem fairly simple to implement (see this video, for example). One thing to note is that is that you have to have a paid GitHub account to use this feature. Hope that helps!