forked from jennybc/happy-git-with-r
-
Notifications
You must be signed in to change notification settings - Fork 0
/
connect-rstudio-git-github.Rmd
107 lines (65 loc) · 4.74 KB
/
connect-rstudio-git-github.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# Connect RStudio to Git and GitHub {#rstudio-git-github}
Here we verify that RStudio can issue Git commands on your behalf. Assuming that you've gotten local Git to talk to GitHub, this means you'll also be able to pull from and push to GitHub from RStudio.
In later chapters and in live workshops, we revisit these operations with much more explanation.
If you succeed here, your set up is DONE.
## Prerequisites
We assume the following:
* You've registered a free GitHub account (chapter \@ref(github-acct)).
* You've installed/updated R and RStudio (chapter \@ref(install-r-rstudio)).
* You've installed Git (chapter \@ref(install-git)).
* You've introduced yourself to Git (chapter \@ref(hello-git)).
* You've confirmed that you can push to / pull from GitHub from the command line (chapter \@ref(push-pull-github)).
## Make a repo on GitHub
Go to <https://github.com> and make sure you are logged in.
Click green "New repository" button. Or, if you are on your own profile page, click on "Repositories", then click the green "New" button.
How to fill this in:
* Repository name: `myrepo` (or whatever you wish, we'll delete this soon anyway).
* Description: "testing my setup" (or whatever, but some text is good for the README).
* Public.
* YES Initialize this repository with a README.
For everything else, just accept the default.
Click big green button "Create repository."
Copy the HTTPS clone URL to your clipboard via the green "Clone or Download" button.
## Clone the new GitHub repository to your computer via RStudio
In RStudio, start a new Project:
* *File > New Project > Version Control > Git*. In "Repository URL", paste the URL of your new GitHub repository. It will be something like this `https://github.com/jennybc/myrepo.git`.
- Do you NOT see an option to get the Project from Version Control? Restart RStudio and try again. Still no luck? Go to chapter \@ref(rstudio-see-git) for tips on how to help RStudio find Git.
* Accept the default project directory name, e.g. `myrepo`, which coincides with the GitHub repo name.
* Take charge of -- or at least notice! -- where the Project will be saved locally. A common rookie mistake is to have no idea where you are saving files or what your working directory is. Pay attention. Be intentional. Personally, I would do this in `~/tmp`.
* I suggest you check "Open in new session", as that's what you'll usually do in real life.
* Click "Create Project".
You should find yourself in a new local RStudio Project that represents the new test repo we just created on GitHub. This should download the `README.md` file from GitHub. Look in RStudio's file browser pane for the `README.md` file.
## Make local changes, save, commit
From RStudio, modify the `README.md` file, e.g., by adding the line "This is a line from RStudio". Save your changes.
Commit these changes to your local repo. How?
From RStudio:
* Click the "Git" tab in upper right pane.
* Check "Staged" box for `README.md`.
* If you're not already in the Git pop-up, click "Commit".
* Type a message in "Commit message", such as "Commit from RStudio".
* Click "Commit".
## Push your local changes online to GitHub
Click the green "Push" button to send your local changes to GitHub. If you are challenged for username and password, provide them (but see below). You should see some message along these lines.
``` bash
[master dc671f0] blah
3 files changed, 22 insertions(+)
create mode 100644 .gitignore
create mode 100644 myrepo.Rproj
```
## Confirm the local change propagated to the GitHub remote
Go back to the browser. I assume we're still viewing your new GitHub repo.
Refresh.
You should see the new "This is a line from RStudio" in the README.
If you click on "commits", you should see one with the message "Commit from RStudio".
If you have made it this far, you are DONE with set up. But first ...
## Were you challenged for GitHub username and password?
If you somehow haven't done so yet, now is the perfect time to make sure you don't need to keep providing username and password on each push.
First, make another small change locally and push again, to make sure we've given your system every opportunity to cache your credentials and retrieve them from the cache. It might "just work".
Are you still challenged? Pick one:
* Credential caching for HTTPS access, chapter \@ref(credential-caching).
* Set up SSH keys, chapter \@ref(ssh-keys).
Now is the perfect time to do this, since you have a functioning test repo.
## Clean up
**Local** When you're ready to clean up, you can delete the local repo any way you like. It's just a regular directory on your computer.
**GitHub** In the browser, go to your repo's landing page on GitHub. Click on "Settings".
Scroll down, click on "delete repository," and do as it asks.