GitHub のセットアップ
GitHub とは
GitHub はバージョン管理システム Git をインターネット上で利用できるようにしたサービスです。卒論に関するデータ、プログラム、日々の議事録や論文そのものなど、加筆修正するファイルをこのシステム上で管理すると、喪失することがなくなるので便利です。
アカウントの作成
- GitHub にアクセス
- 「Sign up」をクリック
- メールアドレス、パスワード、ユーザー名を設定
- メールアドレスは
@psy.senshu-u.ac.jpを推奨
- メールアドレスは
- アカウント作成後、メールで届く確認リンクをクリック
GitHub Desktop のインストール
GitHub Desktop は GitHub を GUI で操作できるアプリケーションです。
- GitHub Desktop にアクセス
- 自分の OS に合ったバージョンをダウンロード
- インストール後、GitHub アカウントでログイン
SSH キーの設定(RStudio との連携)
RStudio から GitHub にアクセスするために SSH キーを設定します。
1. SSH キーの生成
RStudio で Tools > Global Options > Git/SVN を開き、「Create SSH Key…」をクリックします。
- Key type: ED25519(デフォルト)
- Passphrase: 空欄でも OK
「Create」をクリックすると、SSH キーが生成されます。
2. 公開鍵のコピー
同じ画面で「View public key」をクリックし、表示された文字列をすべてコピーします。
3. GitHub に登録
- GitHub にログイン
- 右上のアイコン → Settings → SSH and GPG keys
- 「New SSH key」をクリック
- Title に任意の名前(例:
MacBook Pro) - Key に先ほどコピーした公開鍵を貼り付け
- 「Add SSH key」をクリック
4. Git の初期設定
RStudio のコンソールで以下を実行します(自分の情報に置き換えてください):
# usethis パッケージのインストール(初回のみ)
install.packages("usethis")
# ユーザー名とメールアドレスの設定
usethis::use_git_config(
user.name = "あなたの名前",
user.email = "あなたのメールアドレス"
)リポジトリのクローン
RStudio から
- File > New Project > Version Control > Git
- Repository URL に SSH アドレス(
git@github.com:...)を入力 - プロジェクトを保存する場所を指定
- 「Create Project」をクリック
GitHub Desktop から
- File > Clone repository
- URL タブでリポジトリの URL を入力
- Local path でクローン先を指定
- 「Clone」をクリック
基本的なワークフロー
- Pull:GitHub 上の最新の変更を取得
- 作業:ファイルの編集・作成
- Commit:変更をローカルに記録
- Push:変更を GitHub に送信
この順序を守ることで、チームでの共同作業もスムーズに行えます。
よくあるエラーとその対策
Pull を押したら “fatal: Need to specify how to reconcile divergent branches”
セットアップした直後に最初の Pull を押すと,下のような赤字ダイアログが出て止まることがあります。

fatal: Need to specify how to reconcile divergent branches が出た RStudio の画面メッセージ本文 (上のスクショの抜粋):
hint: You have divergent branches and need to specify how to reconcile them.
hint: git config pull.rebase false # merge
hint: git config pull.rebase true # rebase
hint: git config pull.ff only # fast-forward only
...
fatal: Need to specify how to reconcile divergent branches.
このエラーは「リポジトリが壊れた」のではなく,最初の git config を打ち忘れただけです。 RStudio のコンソールで以下を一度だけ実行して,もう一度 Pull を押せば動きます。
system("git config --global pull.rebase false")意味: 「リモート側にコミットがあって自分のローカルにもコミットがあるとき,どう合体させるか」を Git に教える設定です。pull.rebase false を指定すると merge (=2つのコミットを並べて新しい合流コミットを作る) で取り込みます。ゼミでは merge 派で統一しています。
その他のエラー (CONFLICT, rejected, would be overwritten など)
実際の作業でぶつかる他のエラーは Git で困った時の対処 にまとめてあります。エラーダイアログを閉じる前にそちらを確認してください。