
RStudioとGitHubを連携させて使えるようになるまでの道のり。
- RとRStudioのインストール
- Gitのインストール
- RStudioの情報をGitへ伝える(Configuration)
- RStudioでローカルリポジトリの作成とGitの「Initial commit」
- GitHubのアカウント作成
- SSH鍵の設定と認証(※optional)
- GitHubでリポジトリを作成
- GitHubのリポジトリとRStudioに「Clone」
- RStudioで作成したスクリプトを「Commit」 → GitHubに「Push」
- GitHubのリポジトリからRStudioに「Pull」
- GitHubのブランチ(Branch)を作って作業する
- GitHub Copilot と ChatGPT を取り込む(※ optional)
前回、Gitのインストールと初期設定、GitHubアカウントの作成まで行いました。
今回は、RStudioとGitの連携まで。
事前準備
- RとRStudioのインストール
- Gitのインストール
- GitHubのアカウント作成
方法は下記参照。
Rは統計解析等に強いプログラミング言語。 RStudioは、Rを使うための総合開発環境(IDE)の一つ。 両方とも無料でダウンロードできる。 Rのダウンロード/インストール Rのダウンロード CRANウェブサイトへ。 私 …
これまで、Rのスクリプトやプロジェクトの管理を、職場のサーバーに諸々保存して、リモートデスクトップで編集して、、、とゆー感じでやっていました。 けれど、新しい職場はセキュリティ対策的なもので、しょっちゅうネットワークがリ …
RStudioでの設定:ローカルリポジトリ(Rproject)を作成
RStudioを開き、いつものようにFile -> New ProjectからProjectフォルダを作成する。



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

※ 既存フォルダに対してGit管理を行う場合は、メニューバー -> Tools -> Project Options -> Git/SVNという項目の「Version Control System」から「Git」を選ぶ。確認表示で「Yes」を選択すると、RStudioが再起動し、バージョン管理の準備が整う。
Git操作
新規プロジェクトが立ち上がり、右上のペインに「Git」のタブが現れる。
このタブを通して、Gitの操作を行う。

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

Review Changes画面が立ち上がる。
ファイルを選択すると、ファイルの中身が確認できる。
どちらのファイルもGitで管理したいファイルなので「Staged」列のチェックボックスに☑をつける。
すると、「Status」が「A」に変わった(新たに追加された(Add)という意味)。
コミット
Staged列に☑をつけたら、現在のファイル状態を記録するよう、コミット(変更の記録)する。
開いた画面(もしくは、GitタブのCommitボタンを押して同じ画面を表示)の右側にある「Commit message」欄にコミット文を書く。
コミット文は、ユーザが任意でつけるもので、なるべく具体的にどのような変更を行ったのかを書くとよい。

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

このように、「管理するファイルを指定して、コミットする」というのが基本的な流れになる。
2つのファイルをコミットしたことで、Gitタブは空になった。
この状態は、「バージョン管理の対象ディレクトリには記録されていないファイルはない」という事を意味する。

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

変更を記録していく
ファイルをGit管理の対象に加え得た後は、各ファイルの変更点のみを記録していく事になる。
これにより、いつどのような変更を誰が行ったか、という事が記録に残り、必要に応じて参照したり過去の状態に遡る事ができるようになる。
Git管理しないファイル、拡張子は、.gitignoreに記録する
バージョン管理を行わない(ignoreする)ファイルは、.gitignore
という不可視ファイルに記録する。
新規作成したProject内の.gitignore
には次のファイル名が明記されている(いずれも、バージョン管理する必要のない「不可視ファイル」)。
- .Proj.user
- Rhistory
- RData
- Ruserdata

特に.Rhistory
は、RStudioのコンソールで実行したスクリプトが記録されるので、それをコミットに含めるとパスワードなどの機密事項が他人に見られてしまう危険を孕むことになる。
こうしたファイルは.gitignore
に記録し、管理対象から外す。
例えば、 .css
の拡張子ファイルをすべて不可視ファイルに入れたい場合 ▼
まず、「Ignore」のボタンを押すと、「Git Ignore」の画面が現れる。


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

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

「Staged」に✓を入れてCommitボタンを押すと、前回のコミットからの変更点を確認できる。
緑色でハイライトされた部分が新たに追加された部分を示しており、きちんと*.css
が追加されたことがわかる。

変更した事をコミットしておく
変更したら、内容をコメントしてコミットする。
例えば、さっきの例の場合。
「Staged」に☑を入れて、説明を書いたら、コミット

無事コミットできた。

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

変更したらコミット
例えば今度は、先ほど追加した*.css
を削除する場合。
スクリプトで*.css
を削除し、保存マークをクリックする。

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

「Staged」に☑を入れた状態で、「Commit」をクリック。
画面下に変更箇所がハイライトされる。
- 赤色ハイライト:削除した部分
- 緑色ハイライト:追加した部分

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

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

Statusの理解
Status
列のアイコンの意味は下記。
アイコン | 色 | 状態 |
[?] | 黄 | git管理の対象になっていない |
[M] Modified | 青 | リポジトリの状態から変更された |
[D] Delete | 赤 | リポジトリにあったファイルが削除された |
[A] Added | 緑 | 新たにgit管理状態になった |
[U][U] | 橙 | リポジトリ間で差分が衝突している |
コミット履歴の確認
コミット履歴は、先ほどの「Commit」→「History」か、Gitタブ内にある時計のアイコンをクリックして確認する。


References
フレームワーク 事前準備:Github/Gitの環境構築 事前準備:Projectをつくる 事前準備:Projectの内部構造 編集する コミットする プッシュする まとめ 再現性のあるコーディングはとても重要だが、整理の仕方をまとめたものがほとんどない。個人の好みが大きく出るところだが、自然選択を経て私が到達したレポジトリの作り方をまとめてみる。前提条件としてR Studioを使っていることを想定するが、そうでなくとも基本構造は使える。 フレームワーク ローカル(自分のパソコン)とオンラインレポジトリ(Github)を連携する環境を作る。変更履歴を残しながらオンラインレポジトリに保存することで、デバッグ(エラーがないかチェックすること)・再現・シェアしやすくなる。大枠としては以下: レポジトリ(コードなど)を編集する 変更履歴をGitに記録する(コミット) 編集をGithubに反映する(プッシュ) 1に戻る 事前準備:Github/Gitの環境構築 Happy Git and GitHub for the useRがかなり丁寧にまとめてくれているので、こちらをぜひ一読してほしい。以下は最低限の環境構築の手順を説明する。 Githubでアカウントをつくり、オンラインでのストレージ先を確保する。このアカウント名はレポジトリのリンクに必ず含まれるので、極端に長いものや、大文字を含むものは避けたい。このアカウントにローカルで作成したレポジトリを追加する。基本、Github上でレポジトリは編集せず、ローカルで編集したものをオンラインにプッシュする形で更新する。 Gitをインストールする。ローカルで機能するもので、編集履歴を自動管理するための装置(バージョンコントロールシステム)である。Gitでは、コミットすることで編集履歴を記録してくれる。変更箇所は自動認知してくれるため、この作業が非常に楽になる。基本デフォルトの設定のままインストールすれば問題ないが、念のためこちらを読んでおくといいかもしれない。 Git clientをインストールする。Gitはターミナルから直接操作もできるが、ややとっつきにくい。そこで、操作しやすいGUIを提供してくれるGithub Desktopをここでは使うことにする。ほかの選択肢についてはこちらを参照するとよい。 事前準備:Projectをつくる Gitの環境構築が済んだらProjectを作る(メニューバーのFile > New Project > New Directory > New Project )。このとき、以下のウインドウでCreate a git repositoryにチェックし忘れないようにする。このProjectに論文一つの必要情報をすべて入れる(生データ、コード、論文原稿)。 R Projectの作成画面。“Create a git repository”にチェックし忘れないようにする。なお、Gitがインストールされていないとこのチェックマークは選択不可。 プロジェクトは、初期ファイルとして以下のファイルを含んでいる。 project_name.Rproj: プロジェクトのメタデータファイルのようなもの。プロジェクトを開きたいときはこれを開く。プロジェクトが開かれている場合は、R Studio右上にproject_nameがみえる。開いていない場合はProject: (None)となる。
2017年12月時点での状況を振り返り、変更点や新しい機能等について更新、文章の見直しを行いました。差分はこちらからも確認できます。先日、Tokyo.RでRStudioとGitの話をしてきましたが…
『何を求め、どこへ行くのか』〜こんにちはR界の若頭です。 WindowsでRStudioを使ってRのコードを書いている人って、多いと思います。IT苦手だけど、データマイニングしたいという人に多いんじゃないでしょうか。で、RStudioにいつからだったかバージョン管理機能がついていて、「同じようなファイルがフォルダに混在しているしバージョン管理使ってみたいけどIT苦手だしよくわかんねーよ。日本語の手順解説ブログねーし。」というIT苦手な自分、いやあなたのために、今日はWindowsのRStudioによるバージョン管理機能をgitで有効化した時の手順を記しておきます。 私が設定した環境を記載してお…
1. 趣旨最近になって、Rのスクリプトやプロジェクトの管理をGitで始めました。いや~~~~~非常に便利。僕の中ではイノベーション。これはスクリプト書くのが楽しくなる。ということで、「Gi…
#はじめに 【GitHub初心者向け】自分自身なんとなく理解しているつもりになって、(Gitコマンド) add,commit , push etc を叩いていましたが、本稿執筆にあたり、さらに…
前処理のための前処理(Tokyo.R#45) - Download as a PDF or view online for free
R studio with Github入門 R stduioを使って解析しているが他の言語、CUI、コマンド操作????? でもGithubをR studioで使ってみたい!!!!! な方向けの記事です(<自分用のメモです)。 (本記事を参考にして生じた問題には筆者は責任を負いません。) かなりざっくりした説明で、厳密には正確ではない表現もありますが実用上は問題にならないと思います. (本記事を参考にして生じた問題に対しては筆者はいかなる責任も負いません.) また細かい解説は先人たちの素晴らしい記事にゆだねております そもそもgitとgithubって別物だったんですね~みたいな状態から1日で…