-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgit.qmd
111 lines (77 loc) · 3.23 KB
/
git.qmd
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
108
109
110
111
# git {#git}
```{r echo=FALSE}
load("variable.RData")
```
## GitHub
::: callout-tip
```{r echo=FALSE}
i <- i + 1
```
TIP `r sprintf("%03d", i)`: GitHub からプロジェクトをダウンロード
:::
流れとしては、以下のようになります。
1. GitHub 上で、元のレポジトリ(これを upstream という)から、自分のレポジトリにフォークする
2. フォークしたレポジトリ(origin という)から、自分のパソコンに取り込む(local という)
最初のフォークは、ブラウザ上で行います。
次に、ローカルに取り込みます。これは、RStudio で、File \> New Project
追加 (https://stackoverflow.com/questions/41283955/github-keeps-saying-this-branch-is-x-commits-ahead-y-commits-behind)
git remote add upstream https://github.com/upstream/repo.git
upstream と同じ状態にしたい時は
git pull --rebase upstream main git push --force-with-lease origin main
::: callout-tip
```{r echo=FALSE}
i <- i + 1
```
TIP `r sprintf("%03d", i)`: プロジェクトを GitHub に登録
:::
前提条件として、
- GitHub ですでにアカウントを作成済み
- そのプロジェクトの右上ペイン(Environment のあるペイン)に Git タブがない
まず、既存のプロジェクトを GitHub に登録します。この作業は最初の1回だけで良いはずです。 主に3つの方法があります。どれか一つを選んでください。
- R/RStudio でそのプロジェクトを開いておき、Console で `usethis::use_git()` とする。
- RStudio で、 Tools \> Project Options ... \> Git/SVN と進む。"Version control system" で "Git" を選択し、Confirm New Git Repository? には Yes!
- シェルで `git init` を実行。
これで、右上に Git タブができたり、Files に .gitignore というファイルができたりします。
早速、.gitignore に、GitHub で公開・管理しないファイルを登録しておきます。最初の4行がこうなっていると思います。
::: callout-tip
```{r echo=FALSE}
i <- i + 1
```
TIP `r sprintf("%03d", i)`: 認証
:::
GitHub を使ってソース管理をする場合には、Personal Access Token による認証が必要です。
1. GitHub 上で、 personal access token (PAT) を端末ごとに作成
- fine-grained と classic がある。fine-grained は、色々設定できすぎて大変。classic を使う。
- expiration を never にしておく。
- write:packages にチェック
2. ローカルで、以下を実行
```{R eval=FALSE}
install.packages("gitcreds")
library(gitcreds)
gitcreds_set()
```
ここで、2: Replace these credentials を選択し、上で作成した PAT をコピペ
::: callout-tip
```{r echo=FALSE}
i <- i + 1
```
TIP `r sprintf("%03d", i)`: GitHub でタグをつける
:::
```{bash eval=FALSE}
git tag -a v0.0.12 -m 'version 0.0.12'
git push origin v0.0.12
```
::: callout-tip
```{r echo=FALSE}
i <- i + 1
```
TIP `r sprintf("%03d", i)` Git タブが表示されない
:::
いくつかの原因が考えられます。
Globan Options と Project Options の git を確認します。
```{r eval=FALSE}
usethis::use_git()
```
```{r echo=FALSE}
save(i, file = "variable.RData")
```