GitとGitHubのメルアド登録の話

Web制作の勉強を始めた頃、なんとなく「Git」と「GitHub」をセットで覚えていた。
git initして、git commitして、git pushして…。
「コミットしてプッシュすれば、GitHubにあがるんだよね」ぐらいの理解で、特に深く考えたことはあなかった。でも、しばらく使っていると、ちょっとした違和感が。

「え?なんでメールアドレスをあちこちに入力しないといけないの?」

まあ、最初はあまり気にせず使っていたのだが、英文メールのこともあり整理しないと、と思った。
これがわからなくてモヤモヤしていたが、ようやく整理できたので自分なりにまとめてみた。


ターミナルで使うのが「Git」、Webで見るのが「GitHub」

まず大前提として、「Git」と「GitHub」は別物。
よく一緒に語られますが、役割がぜんぜん違うようだ。

  • Git:バージョン管理システム。ローカル(自分のパソコン上)で、ファイルの変更履歴を記録・管理するツール。
  • GitHub:Gitで管理した履歴を、クラウド(インターネット上)に保存・共有するサービス。

例えるなら:

  • Git → 日記帳に手書きで書いている(ローカルに記録)
  • GitHub → その日記をスキャンしてGoogleドライブにアップロード(クラウドで保管・共有)

なので、「Gitを使って記録し、GitHubにアップロードする」という流れになる。
ターミナル(黒い画面)で操作するのがGit。
ブラウザで見るのがGitHub。


Gitで使うメールアドレス:これは署名

git config --global user.email "you@example.com"
これ、最初に出てきて「なにこれ?」って思った方も多いはず。

これは、「誰がそのコミットを行ったか」という署名のようなもので、
Gitでは、ファイルの変更履歴に「名前」と「メールアドレス」が記録される。

つまり、**Gitにとってのメールアドレスは「履歴に残すための署名」**で、
git logを見ると、ちゃんと自分の名前とメアドが表示されているのがわかる。


GitHubで使うメールアドレス:これはアカウント認証

一方、GitHubでのメールアドレスは、アカウントのログイン情報で、
要するに「この人がGitHubのユーザーだよ」という認証や通知先に使われる。

なので、ここでのメルアドはGitで入れたメルアドとは直接関係はないようだ。でも関連性はあって、

Gitで使っているメールアドレスが、GitHub側に「登録されていない」場合、
GitHubの画面上で**「作者不明(Unverified)」**のように表示される。

自分のコミットなのに「この人誰?」扱いされるのはちょっと寂しい。

そのため、Gitで設定したメールアドレスをGitHubにも登録しておくのがいいようだ。


匿名でやりたい場合:no-replyメールもある

ちなみに「本名+メールを公開したくない」という人向けに、
GitHubでは匿名で署名できる仕組みも用意されていて、

それが your-id@users.noreply.github.com という形式のメールアドレス。

GitHubの「Settings → Emails」で
✅「Keep my email address private」
✅「Block command line pushes that expose my email」
をONにすると、コミットにこのno-replyアドレスが使われ、個人情報が保護される。


まとめ:

GitとGitHubは切っても切れない関係ですが、それぞれ役割がはっきり違っていて

  • Gitはローカルの記録ツール
  • GitHubはクラウドで共有するためのサービス
  • Gitで使うメールは「署名」
  • GitHubで使うメールは「ログイン情報」

メールアドレスが複数出てくるのは、この「使い道の違い」があるから。

今まではなんとなく使っていたGitとGitHubですが、
まあ、自分なりの解釈なので多少違うかもしれないが、大筋では大丈夫であろうと思う。

目次