Git for WindowsでGitHubのリポジトリを操作する
Git for Windows
インストール方法はGit for Windowsからインストーラーをダウンロードして実行するだけなので割愛します。
インストールが終了したらメニューからGit CMD
をクリックします。
> git --version git version 2.29.2.windows.2
初期設定
続けてユーザ名とメールアドレスを設定します。
> git config --global user.name "your_name" > git config --global user.email "your_email@example.com"
以下の設定はオプションです。私の環境では下記の設定を行いました。
> git config --global color.ui auto > git config --global core.preloadindex true > git config --global core.autocrlf false > git config --global core.fscache true > git config --global core.quotepath false > git config --global core.ignorecase false > git config --global core.safecrlf true
設定は下記のコマンドで確認できます。
> git config --global --list
SSHの設定
SSHの設定を行い、Git for WindowsからGitHubのリモートリポジトリを操作できるようにします。
SSH Keyの作成
下記のようにssh-keygen
コマンドでSSH Keyを作成します。
#(1) ~ #(3)で入力を求められます。
- #(1) : 鍵ファイルの作成先とファイル名を入力します。デフォルトでよければエンターキーを押します。
- #(2) : パスフレーズを入力します。必要がなければエンターキーを押します。
- #(3) : パスフレーズを入力した場合、同じパスフレーズを入力します。入力していなければエンターキーを押します。
> ssh-keygen -t ed25519 -C "your_email@example.com" Generating public/private ed25519 key pair. Enter file in which to save the key (C:\Users\rubytomato/.ssh/id_ed25519): #(1) Created directory 'C:\Users\rubytomato/.ssh'. #(2) Enter passphrase (empty for no passphrase): #(3) Enter same passphrase again: Your identification has been saved in C:\Users\rubytomato/.ssh/id_ed25519. Your public key has been saved in C:\Users\rubytomato/.ssh/id_ed25519.pub. The key fingerprint is: SHA256:MQwyTDgzA9NRPT2a1EjkJe8ZdAP/mWPwkOAuFhz31go your_email@example.com The key's randomart image is: +--[ED25519 256]--+ |oo.*=+*+*.o | | .B .==@+= + | | = .++E.B . | | o+ B * o | | o S . B | | . . . . | | | | | | | +----[SHA256]-----+
公開鍵
作成された公開鍵をGitHubに登録します。
GitHubにアクセスし、Settingsページを開きます。
メニューのSSH and GPG keys
をクリック → New SSH key
ボタンをクリックします。
Title
に任意の文字列(わかりやすいタイトル)、key
に公開鍵の内容を貼り付け、Add SSH key
ボタンをクリックします。
登録後
テスト
下記コマンドで正しく設定されていることを確認します。最後の行にYou've successfully authenticated
と表示されていれば設定は正常です。
> ssh -T git@github.com The authenticity of host 'github.com (xxx.xxx.xxx.xxx)' can't be established. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'github.com,xxx.xxx.xxx.xxx' (RSA) to the list of known hosts. Hi rubytomato! You've successfully authenticated, but GitHub does not provide shell access.
リポジトリを作成する
GitHubにリポジトリを作成し、Git for Windowsからリポジトリを操作できることを確認します。
リポジトリを作成
GitHubにtest_repo
というリポジトリを作成します。
リポジトリ作成後のページに、この後に実行するコマンドが記載されているので基本的にこの通りに実行します。
ローカル
任意のディレクトリをGit Bashで開きます。この例ではC:\Users\rubytomato\git
で開きました。
# ディレクトリ名はリポジトリ名と同じにします。 $ mkdir test_repo $ cd test_repo # test_repoディレクトリをリポジトリ化します。 $ git init Initialized empty Git repository in C:/Users/rubytomato/git/test_repo/.git/ # コミットするファイルを作成します。ファイルの内容は後述します。 $ vi README.MD # Gitで管理するようにします。 $ git add . # リポジトリにコミットします。 $ git commit -m "first commit" [master (root-commit) 5c2bee2] first commit 1 file changed, 2 insertions(+) create mode 100644 README.MD # masterブランチの名前をmainに変えます。 $ git branch -M main # リモートブランチのURLをoriginに設定します。 $ git remote add origin git@github.com:rubytomato/test_repo.git # リモートブランチへプッシュします。 $ git push -u origin main Enumerating objects: 3, done. Counting objects: 100% (3/3), done. Writing objects: 100% (3/3), 233 bytes | 233.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 To github.com:rubytomato/test_repo.git * [new branch] main -> main Branch 'main' set up to track remote branch 'main' from 'origin'.
README.MDの内容
# test_repo
pushが成功したらGitHubページをリロードします。README.MDに記述した内容が反映されていることを確認します。