RStudio-Git-GitHub-logo

RStudioとGitHubを連携させて使えるようになるまでの道のり。

前回、Gitのインストールと初期設定、GitHubアカウントの作成まで行いました。

今回は、RStudioとGitの連携まで。

事前準備

事前準備として必要な事リスト
  • RとRStudioのインストール
  • Gitのインストール
  • GitHubのアカウント作成

方法は下記参照。

RStudioでの設定:ローカルリポジトリ(Rproject)を作成

RStudioを開き、いつものようにFile -> New ProjectからProjectフォルダを作成する。

RStudio-Git-0
RStudio-Git-1
RStudio-Git-2

ここで「□ Create a git repository」に☑を入れる

RStudio-Git-3

※ 既存フォルダに対してGit管理を行う場合は、メニューバー -> Tools -> Project Options -> Git/SVNという項目の「Version Control System」から「Git」を選ぶ。確認表示で「Yes」を選択すると、RStudioが再起動し、バージョン管理の準備が整う。

Git操作

新規プロジェクトが立ち上がり、右上のペインに「Git」のタブが現れる。

このタブを通して、Gitの操作を行う。

RStudio-Git-4

Review Changes画面

Gitペインの一番左にあるDiffボタンを押すと、

RStudio-Git-5

Review Changes画面が立ち上がる。

RStudio-Git-6

ファイルを選択すると、ファイルの中身が確認できる。

どちらのファイルもGitで管理したいファイルなので「Staged」列のチェックボックスに☑をつける。

すると、「Status」が「A」に変わった(新たに追加された(Add)という意味)。

RStudio-Git-7

コミット

Staged列に☑をつけたら、現在のファイル状態を記録するよう、コミット(変更の記録)する。

開いた画面(もしくは、GitタブのCommitボタンを押して同じ画面を表示)の右側にある「Commit message」欄にコミット文を書く。

コミット文は、ユーザが任意でつけるもので、なるべく具体的にどのような変更を行ったのかを書くとよい。

RStudio-Git-8

「Commit」ボタンを押すと、「Git Commit」画面が現れる。

RStudio-Git-9

このように、「管理するファイルを指定して、コミットする」というのが基本的な流れになる。

 

2つのファイルをコミットしたことで、Gitタブは空になった。

この状態は、「バージョン管理の対象ディレクトリには記録されていないファイルはない」という事を意味する。

RStudio-Git-10

「Changes」の隣にある「History」を押すと履歴が確認できる。

History

 

変更を記録していく

ファイルをGit管理の対象に加え得た後は、各ファイルの変更点のみを記録していく事になる。

これにより、いつどのような変更を誰が行ったか、という事が記録に残り、必要に応じて参照したり過去の状態に遡る事ができるようになる。

Git管理しないファイル、拡張子は、.gitignoreに記録する

バージョン管理を行わない(ignoreする)ファイルは、.gitignoreという不可視ファイルに記録する。

新規作成したProject内の.gitignoreには次のファイル名が明記されている(いずれも、バージョン管理する必要のない「不可視ファイル」)。

  • .Proj.user
  • Rhistory
  • RData
  • Ruserdata

RStudio-Git-11

特に.Rhistoryは、RStudioのコンソールで実行したスクリプトが記録されるので、それをコミットに含めるとパスワードなどの機密事項が他人に見られてしまう危険を孕むことになる。

こうしたファイルは.gitignoreに記録し、管理対象から外す。

 

例えば、 .cssの拡張子ファイルをすべて不可視ファイルに入れたい場合 ▼

まず、「Ignore」のボタンを押すと、「Git Ignore」の画面が現れる。

RStudio-Git-12
RStudio-Git-13

ここに*.cssを追加して「Save」を押すと、

RStudio-Git-14

Gitタブでは.gitignoreの状態が青色の「M(Modified)」になった。

RStudio-Git-16

「Staged」に✓を入れてCommitボタンを押すと、前回のコミットからの変更点を確認できる。

緑色でハイライトされた部分が新たに追加された部分を示しており、きちんと*.cssが追加されたことがわかる。

RStudio-Git-15

変更した事をコミットしておく

変更したら、内容をコメントしてコミットする。

例えば、さっきの例の場合。

「Staged」に☑を入れて、説明を書いたら、コミット

RStudio-Git-17

無事コミットできた。

RStudio-Git-18

「Changes」の隣にある「History」を押すと履歴が確認できる。

History

変更したらコミット

例えば今度は、先ほど追加した*.cssを削除する場合。

スクリプトで*.cssを削除し、保存マークをクリックする。

RStudio-Git-21

すると、「Gitペイン」に「gitignore」が現れる(Statusは「M:Modified」)。

RStudio-Git-22

「Staged」に☑を入れた状態で、「Commit」をクリック。

画面下に変更箇所がハイライトされる。

  • 赤色ハイライト:削除した部分
  • 緑色ハイライト:追加した部分
RStudio-Git-23

「Commit message」を書いて、「Commit」。

RStudio-Git-24

無事変更内容が記録された。

RStudio-Git-25

Statusの理解

Status列のアイコンの意味は下記。

アイコン 状態
[?] git管理の対象になっていない
[M] Modified リポジトリの状態から変更された
[D] Delete リポジトリにあったファイルが削除された
[A] Added 新たにgit管理状態になった
[U][U] リポジトリ間で差分が衝突している

コミット履歴の確認

コミット履歴は、先ほどの「Commit」→「History」か、Gitタブ内にある時計のアイコンをクリックして確認する。

RStudio-Git-27
RStudio-Git-26

References