はじめに
次案件がIaaS(Infrastructure as a Service)なのでその勉強するように言われましたが、今まで全く縁がなかったのでIaaSとは??でした。
さらに構築を自動化ツール等を用いるため、teraformやGitHubを触れと言われましたが、何のためのものなのか全くわからず。そこでGitHubについて同僚に聞いたら「バージョン管理ツールです」と言われました。
余計わからなくなったので、お勉強のためしばらく業務関連の記事を作成したいと思います。
(2026/1/25追記)
Mac Miniを手に入れたので、Windows用とMac用の2通り記載します![]()
GitHubとは
GitHubとは、Git(拠点) の Hub(集まり) とのこと。
そもそもGitとは、分散型バージョン管理システムの一つで、CLIの一種であり、ソースコードのバージョン管理するツールとして作られたそうです。
以降記載の内容は、すべてWindowsでの操作になります。
GitHubの用語
前提としてGitHubで使用される用語を全く知らないので、どのような用語があるのかを調べてみました。
ローカル/リモートリポジトリ
基本的にはローカルリポジトリで作業したものをリモートリポジトリに反映するそうです。
・リポジトリ:ファイルやディレクトリの状態を保存するスペースのこと。管理したいディレクトリをリポジトリと連携させることで、そのディレクトリ内のファイルの変更履歴を記録し、保存していくことができます。
・リモートリポジトリ:ネットワーク上に存在する。なおGitHub上で作成が可能。
・ローカルリポジトリ:自分のPC内に記録される。GitHub上で作成したリモートリポジトリをクローンする形で作成するのが一般的。
クローン(clone)
リモートリポジトリをローカルにダウンロードするコマンドです。クローンしたタイミングのリモートリポジトリと全く同じ環境をローカルに作成します。
ブランチ(branch)
作業を分岐させて履歴の流れを保存していく方法のこと。1つのリポジトリに対して、複数のメンバーが同時に修正を行うことができる。
おおもとのデータがあれば、修正されたブランチをマージさせることで、複数の修正がひとつのファイルに反映されます。
コミット、プッシュ(commit/push)
・コミット:ファイル追加や変更の履歴をリポジトリに記録すること。
・プッシュ:ファイル追加や変更の履歴をリモートリポジトリにアップする操作のこと。
※なお コミット前に修正したファイルをaddする必要があります。Gitはまず仮の保管場所に変更したファイルをまとめ、それに名前をつけてパッケージにするという手順をとります。この仮の保管場所に保存するコマンドがadd、名前を付けてパッケージにするコマンドがコミットです。
プルリクエスト(Pull request)
自分が行った変更をオリジナルのものに反映させたいというときに使う通知方法。オリジナルのオーナーにリクエストを通知することができます。
プルリクエストの処理は、GitHub上で行うことが可能です。ブランチに対してプッシュを行った場合、GitHubで該当のリポジトリの画面を開くと表示される「Compare & pull request」というボタンを押下することで、プルリクエスト作成画面に移行できます。
フォーク(fork)
複数に分派したほかのひとのプロジェクトのリポジトリをコピーして、自分のものを改変していくこと。オリジナルのファイルに対する編集アクセス権がなくとも、自分の場所に取り入れることによって編集できるようになります。
GitHub使用時の流れ
- リポジトリを作成
- ローカルにclone
- ブランチ作成
- ファイル修正
- 確認、Add、Commit
- Push
- Pull&Request
- Approve
- Merge
この手順についてはまた別の記事に書きたいと思います。
GitHubのアカウント作成
「ギットハブ・ジャパン」の公式サイトにアクセスし、GitHub用のアカウントを作成します。
私はすでにアカウントだけは作成済みだったので、そのままログインしました。
リモートリポジトリの作成
(1) GitHub管理画面で、「Create Repository」ボタンをクリックします。
(2) 作成したいリポジトリの内容を指定して「Create repository」を押下します。
-
Repository name:任意のリポジトリ名を指定 -
PubilicorPrivate -
Add .gitignore:Terraform(Terraformで構築する場合)
Git初期設定
Windows の場合
GitHubを使用する場合は、まずはGitのインストールが必要らしいです。
以下のサイトより、ダウンロードしてインストールします。
ダウンロード
上記のサイトにいき、[Download]ボタンをクリックします。
インストール
ダウンロードされたexeファイルをダブルクリックすると、以下の画面が表示されます。
ここでは設定値などをとくに変更せず、すべて[Next]を押下し続けます。

最後の画面が表示されたら、Finishボタンを押下し、インストールを終了します。
Gitの初期設定
GitBashまたはPowershellを起動し、以下のコマンドを実行します。
(1) ユーザ名を登録します。
$ git config --global user.name [任意のユーザー名]
#$ git config --global user.name piromo
(2) メールアドレスを登録します。
$ git config --global user.email [任意のメールアドレス]
#$ git config --global user.email XXXXXXXXXXX@XXXXX.com
(3) 登録が正常に完了したことを確認します。以下のような結果が出力されます。
$ git config --list
~省略~
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master
user.name=piromo
user.mail=XXXXXXXXXXX@XXXXX.com
Mac OS の場合
gitがインストールされているか確認します。
git --version
以下の内容でgitの設定を行います。これはgitの履歴保存の際に利用するものです。
git config --global user.name "ユーザ名"
git config --global user.email "メールアドレス"
登録後、以下のコマンドで確認します。
git config --global user.name
git config --global user.email
ローカルとGitHubを連携
SSH接続をする
詳細は以下を参照してください。
SSH鍵を作成するのが初めての場合は、以下のコマンドを実行します。
まず鍵を作成するフォルダに移動します。
cd ~/.ssh
以下のコマンドでSSH鍵を作成します。
ssh-keygen -t rsa
以下のようにいくつか質問が返されますが、初回の場合はそのままEnterを3回押下します。
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/user/.ssh/id_rsa):
Enter passphrase for "/Users/user/.ssh/id_rsa" (empty for no passphrase):
Enter same passphrase again:
以下のコマンドで作成されたものを確認します。
$ ls -l
-rw------- 1 user staff 2643 1月 27 23:39 id_rsa
-rw-r--r-- 1 user staff 600 1月 27 23:39 id_rsa.pub
作成したSSHKeyをクリップボードへコピーします。
$ pbcopy < ~/.ssh/id_rsa.pub
GitHubのSetting>Access>SSH and GPG keys画面に遷移し、New SSH keyを押下します。
先ほどコマンドでコピーしたSSHKeyをKeyに貼り付けて、Add SSH keyを押下します。

ローカルのフォルダをリポジトリに連携
ローカルにある成果物を先ほど作成したリポジトリに連携させます。
cd [フォルダ名]
git init
git add
git commit -m "Initial commit"
git remote add origin git@github.com:username/repositoryname.git
git push -u origin main
GitHub上でリポジトリを確認すると、ファイルがアップロードされています。
PUSH時のエラー
PUSHの際に以下のようなエラーが表示された場合
remote: error: GH007: Your push would publish a private email address.
GitHubがプライベートメールアドレスの公開を防いでいます。
GitHubは各ユーザーに専用の匿名メールアドレスを提供しているので、それを使用しましょう。
git config --global user.email "username@users.noreply.github.com"
git commit --amend --reset-author --no-edit
git push -f origin main
参考



