Step 1: Make a GitHub account

Create a GitHub account (if you do not already have one): https://github.com/ - this is completely free to use. Please email the instructors the username for your account.

Step 2: Installing and configuring Git

If you do not have Git installed, install it from here: https://git-scm.com/downloads.

You may already have Git installed without knowing it, please read the directions available from the definitive guide on R and Git / GitHub: https://happygitwithr.com/install-git.html. You may have to access your shell (aka terminal, command prompt, etc). DO NOT PANIC. You can read more about the shell here: https://happygitwithr.com/shell.html#shell, with instructions depending on your operating system.

After installation, you will need to configure Git (read more about it here: https://happygitwithr.com/hello-git.html). You can use the shell for this, or you can do this directly in R:

# Uncomment the following line to install the usethis package:
# install.packages("usethis")
library(usethis)
use_git_config(user.name = "Your Name", user.email = "your-github@email.address")

Use your full name for the user.name field and then use the same email as your GitHub account for user.email.

Step 3: Create repository with GitHub

We will follow the paradigm of “GitHub first”. What this means is that when we create a repository, we will create it on GitHub first, then link a local repository to it from inside RStudio.

In GitHub, do the following:

Step 4: ..then in RStudio

In RStudio, do the following:

At this point, you should find that your Files pane is listing the files in your local repository, including one ending in .Rproj and the README.md file that was created on GitHub.

Step 5: Updating your repository

To, e.g., add a new file to your local repository, do the following:

If you encountered no errors then you’re done! While working on a single project you will repeatedly use Step 5, update file, commit changes, then push changes. We will cover pulling at a later time.

Every time you want to create a new repository, you can just start with Step 3, use GitHub, copy the repository into RStudio, then repeatedly update, commit, and push.

Email the instructors if you have any questions.

LS0tCnRpdGxlOiAiU2V0dGluZyB1cCBHaXRIdWIiCm91dHB1dDogaHRtbF9kb2N1bWVudAotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQprbml0cjo6b3B0c19jaHVuayRzZXQoZWNobyA9IFRSVUUpCmBgYAoKIyMgU3RlcCAxOiBNYWtlIGEgR2l0SHViIGFjY291bnQKCkNyZWF0ZSBhIFtHaXRIdWJdKGh0dHBzOi8vZ2l0aHViLmNvbS8pIGFjY291bnQgKGlmIHlvdSBkbyBub3QgYWxyZWFkeSBoYXZlIG9uZSk6IFtodHRwczovL2dpdGh1Yi5jb20vXShodHRwczovL2dpdGh1Yi5jb20vKSAtIHRoaXMgaXMgY29tcGxldGVseSBmcmVlIHRvIHVzZS4gUGxlYXNlCmVtYWlsIHRoZSBpbnN0cnVjdG9ycyB0aGUgdXNlcm5hbWUgZm9yIHlvdXIgYWNjb3VudC4KCiMjIFN0ZXAgMjogSW5zdGFsbGluZyBhbmQgY29uZmlndXJpbmcgR2l0CgpJZiB5b3UgZG8gbm90IGhhdmUgR2l0IGluc3RhbGxlZCwgaW5zdGFsbCBpdCBmcm9tIGhlcmU6IFtodHRwczovL2dpdC1zY20uY29tL2Rvd25sb2Fkc10oaHR0cHM6Ly9naXQtc2NtLmNvbS9kb3dubG9hZHMpLgoKWW91IG1heSBhbHJlYWR5IGhhdmUgR2l0IGluc3RhbGxlZCB3aXRob3V0IGtub3dpbmcgaXQsIF9fcGxlYXNlIHJlYWQgdGhlIGRpcmVjdGlvbnMgYXZhaWxhYmxlIGZyb20gdGhlIGRlZmluaXRpdmUgZ3VpZGUgb24gYFJgIGFuZCBHaXQgLyBHaXRIdWJfXzogW2h0dHBzOi8vaGFwcHlnaXR3aXRoci5jb20vaW5zdGFsbC1naXQuaHRtbF0oaHR0cHM6Ly9oYXBweWdpdHdpdGhyLmNvbS9pbnN0YWxsLWdpdC5odG1sKS4gWW91IG1heSBoYXZlIHRvIGFjY2VzcyB5b3VyIF9fc2hlbGxfXyAoYWthIF9fdGVybWluYWxfXywgX19jb21tYW5kIHByb21wdF9fLCBldGMpLiBfX0RPIE5PVCBQQU5JQ19fLiBZb3UgY2FuIHJlYWQgbW9yZSBhYm91dCB0aGUgX19zaGVsbF9fIGhlcmU6IFtodHRwczovL2hhcHB5Z2l0d2l0aHIuY29tL3NoZWxsLmh0bWwjc2hlbGxdKGh0dHBzOi8vaGFwcHlnaXR3aXRoci5jb20vc2hlbGwuaHRtbCNzaGVsbCksIHdpdGggaW5zdHJ1Y3Rpb25zIGRlcGVuZGluZyBvbiB5b3VyIG9wZXJhdGluZyBzeXN0ZW0uIAoKQWZ0ZXIgaW5zdGFsbGF0aW9uLCB5b3Ugd2lsbCBuZWVkIHRvIF9fY29uZmlndXJlX18gR2l0IChyZWFkIG1vcmUgYWJvdXQgaXQgaGVyZTogW2h0dHBzOi8vaGFwcHlnaXR3aXRoci5jb20vaGVsbG8tZ2l0Lmh0bWxdKGh0dHBzOi8vaGFwcHlnaXR3aXRoci5jb20vaGVsbG8tZ2l0Lmh0bWwpKS4gWW91IGNhbiB1c2UgdGhlIHNoZWxsIGZvciB0aGlzLCBfX29yIHlvdSBjYW4gZG8gdGhpcyBkaXJlY3RseSBpbiBgUmBfXzoKCmBgYHtyIGdpdC1jb25maWcsIGV2YWwgPSBGQUxTRX0KIyBVbmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lIHRvIGluc3RhbGwgdGhlIHVzZXRoaXMgcGFja2FnZToKIyBpbnN0YWxsLnBhY2thZ2VzKCJ1c2V0aGlzIikKbGlicmFyeSh1c2V0aGlzKQp1c2VfZ2l0X2NvbmZpZyh1c2VyLm5hbWUgPSAiWW91ciBOYW1lIiwgdXNlci5lbWFpbCA9ICJ5b3VyLWdpdGh1YkBlbWFpbC5hZGRyZXNzIikKYGBgCgpVc2UgeW91ciBmdWxsIG5hbWUgZm9yIHRoZSBgdXNlci5uYW1lYCBmaWVsZCBhbmQgX190aGVuIHVzZSB0aGUgc2FtZSBlbWFpbCBhcyB5b3VyIEdpdEh1YiBhY2NvdW50IGZvciBgdXNlci5lbWFpbGBfXy4KCiMjIFN0ZXAgMzogQ3JlYXRlIHJlcG9zaXRvcnkgd2l0aCBHaXRIdWIKCldlIHdpbGwgZm9sbG93IHRoZSBwYXJhZGlnbSBvZiAiYEdpdEh1YmAgZmlyc3QiLiBXaGF0IHRoaXMgbWVhbnMgaXMgdGhhdCB3aGVuIHdlIGNyZWF0ZSBhIHJlcG9zaXRvcnksIHdlIHdpbGwgY3JlYXRlIGl0IG9uIGBHaXRIdWJgIGZpcnN0LCB0aGVuIGxpbmsgYSBsb2NhbCByZXBvc2l0b3J5IHRvIGl0IGZyb20gaW5zaWRlIGBSU3R1ZGlvYC4KCkluIGBHaXRIdWJgLCBkbyB0aGUgZm9sbG93aW5nOgoKLSBnbyB0byB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeSAoaS5lLiwgYGdpdGh1Yi5jb20vPHlvdXIgdXNlciBuYW1lIGhlcmU+YCkKCi0gY2xpY2sgb24gIisiIGF0IHRvcCByaWdodCwgYW5kIHNlbGVjdCAiTmV3IHJlcG9zaXRvcnkiCgotIG5hbWUgdGhlIHJlcG9zaXRvcnkgKGUuZy4sICJjbXNhY2FtcC1lZGEtcHJvamVjdCIpCgotIHByb3ZpZGUgYSBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgcmVwb3NpdG9yeSAoZG9uJ3QgbGVhdmUgY29tcGxldGVseSBibGFuayEpCgotIGtlZXAgdGhlIHJlcG9zaXRvcnkgcHVibGljCgotIGNsaWNrIG9uICJJbml0aWFsaXplIHRoaXMgcmVwb3NpdG9yeSB3aXRoIGEgUkVBRE1FIi4uLnRoZXJlIGlzIG5vIG5lZWQgdG8gIkFkZCAuZ2l0aWdub3JlIiBvciAiQWRkIGEgbGljZW5zZSIKCi0gY2xpY2sgb24gIkNyZWF0ZSBSZXBvc2l0b3J5IgoKIyMgU3RlcCA0OiAuLnRoZW4gaW4gUlN0dWRpbwoKSW4gYFJTdHVkaW9gLCBkbyB0aGUgZm9sbG93aW5nOgoKLSBjbGljayBvbiBgRmlsZSA+IE5ldyBQcm9qZWN0Li4uYAoKLSBjbGljayBvbiAiVmVyc2lvbiBDb250cm9sIiwgdGhlbiBvbiAiR2l0IgoKLSBwcm92aWRlIHRoZSAqZnVsbCogYWRkcmVzcyBmb3IgdGhlICJSZXBvc2l0b3J5IFVSTCIgKGluY2x1ZGluZyB0aGUgYGh0dHBzYCwgZXRjLjsgYnkgZGVmYXVsdCwgdGhpcyB3aWxsIHByb3ZpZGUgdGhlIG5hbWUgb2YgeW91ciBsb2NhbCByZXBvc2l0b3J5KQoKLSBtYWtlIHN1cmUgIkNyZWF0ZSBwcm9qZWN0IGFzIHN1YmRpcmVjdG9yeSBvZjoiIHBvaW50cyB0byB3aGVyZSB5b3Ugd2FudCB0byBwb2ludCBpdAoKLSBjbGljayBvbiAiQ3JlYXRlIFByb2plY3QiCgpBdCB0aGlzIHBvaW50LCB5b3Ugc2hvdWxkIGZpbmQgdGhhdCB5b3VyIGBGaWxlc2AgcGFuZSBpcyBsaXN0aW5nIHRoZSBmaWxlcyBpbiB5b3VyIGxvY2FsIHJlcG9zaXRvcnksIGluY2x1ZGluZyBvbmUgZW5kaW5nIGluIGAuUnByb2pgIGFuZCB0aGUgYFJFQURNRS5tZGAgZmlsZSB0aGF0IHdhcyBjcmVhdGVkIG9uIGBHaXRIdWJgLgoKIyMgU3RlcCA1OiBVcGRhdGluZyB5b3VyIHJlcG9zaXRvcnkKClRvLCBlLmcuLCBhZGQgYSBuZXcgZmlsZSB0byB5b3VyIGxvY2FsIHJlcG9zaXRvcnksIGRvIHRoZSBmb2xsb3dpbmc6CgotIG9wZW4gdGhlIG5ldyBmaWxlIGFzIHlvdSBhbHdheXMgd291bGQgKGFzIGFuIGBSIFNjcmlwdGAsIGFuIGBSIE1hcmtkb3duYCBmaWxlLCBldGMuKQoKLSBmaWxsIHRoZSBmaWxlIHdpdGggInN0dWZmIgoKLSBzYXZlIHRoZSBmaWxlLi4uYXQgdGhpcyBwb2ludCwgdGhlIGZpbGUgbmFtZSBzaG91bGQgc2hvdyB1cCBpbiB0aGUgYEdpdGAgcGFuZSBuZXh0IHRvIGFuICJNIiBzeW1ib2wgKGZvciBtb2RpZmllZCkKCi0gY29udGludWUgdG8gbW9kaWZ5IHRoZSBmaWxlLCBvci4uLnN0YWdlIHRoZSBmaWxlIGZvciBhIGNvbW1pdCAodGhpbmsgb2YgaXQgYXM6IHBvc2UgaXQgZm9yIGl0cyBzbmFwc2hvdCkgYnkgY2xpY2tpbmcgb24gIlN0YWdlZCIgaW4gdGhlIEdpdCBwYW5lCgotIGNsaWNrIG9uICJDb21taXQiIGluIHRoZSBgR2l0YCBwYW5lCgotIGluIHRoZSBuZXcgd2luZG93IHRoYXQgb3BlbnMsIGFkZCBhICJDb21taXQgbWVzc2FnZSIsIHRoZW4gY2xpY2sgb24gdGhlICJDb21taXQiIGJ1dHRvbgoKLSBjbGljayBvbiAiUHVzaCIgdG8gcHVzaCB5b3VyIGNoYW5nZXMgZnJvbSB5b3VyIGxvY2FsIHJlcG8gdG8geW91ciBgR2l0SHViYCByZXBvCgpJZiB5b3UgZW5jb3VudGVyZWQgbm8gZXJyb3JzIHRoZW4geW91J3JlIGRvbmUhIFdoaWxlIHdvcmtpbmcgb24gYSBzaW5nbGUgcHJvamVjdCB5b3Ugd2lsbCByZXBlYXRlZGx5IHVzZSBTdGVwIDUsIHVwZGF0ZSBmaWxlLCBjb21taXQgY2hhbmdlcywgdGhlbiBwdXNoIGNoYW5nZXMuIF9XZSB3aWxsIGNvdmVyIHB1bGxpbmcgYXQgYSBsYXRlciB0aW1lXy4gCgpFdmVyeSB0aW1lIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyByZXBvc2l0b3J5LCB5b3UgY2FuIGp1c3Qgc3RhcnQgd2l0aCBTdGVwIDMsIHVzZSBHaXRIdWIsIGNvcHkgdGhlIHJlcG9zaXRvcnkgaW50byBSU3R1ZGlvLCB0aGVuIHJlcGVhdGVkbHkgdXBkYXRlLCBjb21taXQsIGFuZCBwdXNoLgoKRW1haWwgdGhlIGluc3RydWN0b3JzIGlmIHlvdSBoYXZlIGFueSBxdWVzdGlvbnMuCgoKCgo=