14
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【GitHub】初めてのGitHub。GitHubリポジトリ連携まで実施する。

Last updated at Posted at 2024-10-17

はじめに

次案件がIaaS(Infrastructure as a Service)なのでその勉強するように言われましたが、今まで全く縁がなかったのでIaaSとは??でした。
さらに構築を自動化ツール等を用いるため、teraformやGitHubを触れと言われましたが、何のためのものなのか全くわからず。そこでGitHubについて同僚に聞いたら「バージョン管理ツールです」と言われました。

余計わからなくなったので、お勉強のためしばらく業務関連の記事を作成したいと思います。

(2026/1/25追記)
Mac Miniを手に入れたので、Windows用とMac用の2通り記載します:relaxed:

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使用時の流れ

  1. リポジトリを作成
  2. ローカルにclone
  3. ブランチ作成
  4. ファイル修正
  5. 確認、Add、Commit
  6. Push
  7. Pull&Request
  8. Approve
  9. Merge

この手順についてはまた別の記事に書きたいと思います。

GitHubのアカウント作成

「ギットハブ・ジャパン」の公式サイトにアクセスし、GitHub用のアカウントを作成します。

私はすでにアカウントだけは作成済みだったので、そのままログインしました。

image.png

リモートリポジトリの作成

(1) GitHub管理画面で、「Create Repository」ボタンをクリックします。

(2) 作成したいリポジトリの内容を指定して「Create repository」を押下します。

  • Repository name:任意のリポジトリ名を指定
  • Pubilic or Private
  • Add .gitignoreTerraform(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鍵作成
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をクリップボードへコピーします。

クリップボードへのコピー(Mac用)
$ pbcopy < ~/.ssh/id_rsa.pub

GitHubのSetting>Access>SSH and GPG keys画面に遷移し、New SSH keyを押下します。

スクリーンショット 2026-01-28 0.02.16.png

先ほどコマンドでコピーしたSSHKeyをKeyに貼り付けて、Add SSH keyを押下します。
スクリーンショット 2026-01-28 0.03.34.png

SSH Keyが追加されました。
スクリーンショット 2026-01-28 0.13.06.png

ローカルのフォルダをリポジトリに連携

ローカルにある成果物を先ほど作成したリポジトリに連携させます。

1. GitHubにアップロードしたいフォルダに移動
cd [フォルダ名]
2. ローカルのGitリポジトリを初期化
git init
3. 必要なファイルのみ追加
git add
4. 初回コミット
git commit -m "Initial commit"

作成したリポジトリに接続するためのURLを手に入れます。
スクリーンショット 2026-01-28 9.40.35.png

5. ローカルリポジトリと、リモートリポジトリとの連携
git remote add origin git@github.com:username/repositoryname.git
6. GitHub上のmainブランチを上書き
git push -u origin main

GitHub上でリポジトリを確認すると、ファイルがアップロードされています。

PUSH時のエラー

PUSHの際に以下のようなエラーが表示された場合

remote: error: GH007: Your push would publish a private email address.

GitHubがプライベートメールアドレスの公開を防いでいます。
GitHubは各ユーザーに専用の匿名メールアドレスを提供しているので、それを使用しましょう。

1. GitHubのnoreplyメールアドレスをGit設定に変更
git config --global user.email "username@users.noreply.github.com"
2. コミットをやり直す
git commit --amend --reset-author --no-edit
3. 再度プッシュ
git push -f origin main

参考

14
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?