GitHubとは?初心者のための使い方入門|Gitとの違いや初期設定を解説

結論: GitHub(ギットハブ)とは、プログラムの変更履歴を保存・管理・共有するためのWebサービスであり、エンジニアにとっての「身分証明書」兼「最強のポートフォリオ」となるインフラです。

Contents

GitHubとは? 動画編集に例えて理解する

エンジニアの世界に足を踏み入れると、必ず「Git(ギット)」と「GitHub」という2つの単語に遭遇します。この2つは名前が似ていますが、役割は明確に異なります。初心者が最初に躓くポイントなので、まずはここを整理しましょう。

最も直感的に理解できるのは、YouTuberの動画編集作業に例える方法です。

  • Git (ツール): 手元のPCに入っている高機能な編集ソフトの「履歴機能」です。失敗しても Ctrl+Z で戻せたり、「昨日の状態」と「今の状態」を比較できたりします。インターネットがなくても動きます。
  • GitHub (サービス): 編集データをアップロードする「YouTube」や「クラウドサーバー」です。チームメンバーが同じ動画データを編集できるように共有したり、世界中に公開したりする場所です。

つまり、手元のPC(Git)で作業履歴を管理し、そのデータをネット上の倉庫(GitHub)に保管・共有するというのが基本構造です。

現在、世界中で1億人以上の開発者が利用しており、Microsoftの傘下で運営されています。就職や転職の際も「GitHubのアカウントを見せてください」と言われることが一般的であり、もはやエンジニアにとっての必須インフラと言えます。

Mikoto

名前が似てるから同じものかと思ってました。PCで作業するのがGit、ネットに上げるのがGitHubってことですね。

Yachi

その通りです。Gitさえあれば履歴管理はできますが、それを他人と共有したり、PCが壊れた時のバックアップとして使うためにGitHubが必要になるんです。

Yachi

ちなみに、Gitを使わずにファイル名で「v1」「v2」「最終版」「本当に最終版」と管理するのは、エンジニアの世界ではご法度です。個人的には、プログラミングをしない人でも、ドキュメント管理のためにGitを導入すべきだと考えています。

【ここでのポイント】Gitは「手元の履歴管理ツール」、GitHubは「ネット上の共有場所」。役割は違いますが、セットで使うのが現代開発の基本です。

「Git」の仕組みや基本操作については、こちらの記事で詳しく解説しています。

Start: アカウント登録と環境構築

まずは「場所(アカウント)」と「道具(Git)」を用意します。

1. GitHubアカウントの作成

公式サイト(github.com)にアクセスし、「Sign up」から登録します。必要なのは以下の3点です。

  • Username: 公開URLの一部(github.com/ユーザー名)になります。実務でも使う可能性が高いため、ふざけた名前は避けましょう。
  • Email: 普段使うメールアドレス。
  • Password: 強固なものを設定。

登録後に届くメール認証を済ませれば完了です。プラン選択画面が出た場合、個人利用であれば「Free(無料)」を選んでください。機能制限はほぼありません。

Yachi

ユーザー名は後から変更できますが、URLが変わってしまうためリンク切れの原因になります。個人的には、Twitter(X)やQiitaなどの技術アカウントと同じIDにしておくと、個人のブランディングとして統一感が出るのでおすすめです。

2. Gitのインストール

手元のPCにGitコマンドを導入します。

  • Windows: 「Git for Windows」をダウンロードしてインストールします。設定項目が多いですが、基本的にはデフォルトのままで進めて構いません。ただし、エディタ選択画面では使い慣れた「VS Code」などを指定しておくと後で楽になります。
  • Mac: ターミナルを開き、git --version と入力してください。インストールされていなければ、自動的に案内のウィンドウが出ます(あるいはHomebrew経由でインストールします)。

3. 【必須】ユーザー署名の設定

Gitをインストールしたら、必ず最初に行う設定があります。「誰が作業したか」を識別するための名札作りです。これを忘れると、後でコミット(記録)する際にエラーになります。

ターミナル(またはGit Bash)を開き、以下のコマンドを入力します。

これで、「あなたが作業した」という署名が履歴に残るようになります。

Mikoto

これって、GitHubのパスワードとか入れなくていいんですか?

Yachi

ここではあくまで「名札」を作るだけなので、認証情報はまだ不要です。ただ、メールアドレスはGitHubに登録したものと一致させておかないと、後でGitHub上のアイコンが正しく表示されないので注意してくださいね。

【最重要】「鍵」を作る:Personal Access Tokenの設定

ここが現代のGitHub入門における最大の脱落ポイントです。必ず読んでください。

かつては、コマンド操作時の認証に「GitHubのログインパスワード」が使えましたが、セキュリティ強化のため2021年に廃止されました。現在はパスワードの代わりにPersonal Access Token(パーソナルアクセストークン)という「専用の鍵」を使う必要があります。

これを設定しないと、最後の最後で「認証エラー」になり、作業をアップロードできません。先に鍵を作っておきましょう。

Mikoto

え、ログインパスワードじゃダメなんですか?面倒ですね…。

Yachi

確かに一手間ですが、これはセキュリティのためです。万が一トークンが流出しても、そのトークンだけ無効化すればアカウント自体は守られますから。家の鍵を渡す代わりに、倉庫専用のスペアキーを渡すようなイメージです。

トークン発行の手順

  • GitHubの画面右上のアイコン → Settings をクリック。
  • 左サイドバーの一番下 Developer settings をクリック。
  • Personal access tokensTokens (classic) を選択。
  • Generate new token (classic) をクリック。
  • Note: 用途を入力(例: Study-PC-Token)。
  • Expiration (有効期限): セキュリティ的には期限ありが望ましいですが、学習用であれば一旦 No expiration(無期限)や長めの期間でも構いません。
  • Select scopes (権限): ここが重要です。 repo という項目にチェックを入れてください。これがないと、リポジトリへの書き込み(Push)ができません。
  • Generate token ボタンを押下。

画面に ghp_ から始まる長い文字列が表示されます。これが「パスワード代わり」になります。

注意: この画面を閉じるとトークンは二度と表示されません。必ず今すぐメモ帳やパスワード管理ツールにコピーして保存してください。「後で見ればいいや」は通用しません。

Yachi

ちなみに、最近は「Git Credential Manager」などの補助ツールを使えば、ブラウザ認証だけで済む場合もあります。ただ、環境によって挙動が異なるため、基礎としてトークンの仕組みを理解しておくことを強く推奨します。

Step 1: 倉庫の建設 – リポジトリの作成

準備が整ったので、実際にデータを管理する場所(リポジトリ)を作ります。
ここでは、日々の学習記録を残す「Learning Log」を作るシナリオで進めます。

GitHub側(リモート)で倉庫を作る

  • GitHubのトップページ右上にある「+」アイコン → New repository を選択。
  • Repository name: my-learning-log と入力(英数字とハイフン推奨)。
  • Public / Private: 誰でも見れるようにするならPublic、自分だけならPrivate。学習用ならPublicにして「草(活動履歴)」を見せるのが一般的です。
  • その他のチェックボックスは触らず、Create repository をクリック。

作成完了後、画面に表示されるHTTPSのURL(例: https://github.com/YourName/my-learning-log.git)をコピーしておきます。

Mikoto

下手なコードを見られるのが恥ずかしいんですけど、Privateじゃダメですか?

Yachi

もちろんPrivateでもOKです。ただ、就職活動などで「GitHub見せて」と言われたときに中身が見えないので、見せたいリポジトリだけ後からPublicに変更するのも手ですね。個人的には、学習過程こそオープンにして「成長する姿勢」を見せるのが得策だと思います。

PC側(ローカル)で作業場を作る

ターミナルを開き、手元のPCにフォルダを作成してGitの管理下に置きます。

git init を実行すると、フォルダ内に .git という隠しフォルダが生成されます。これがGitの「心臓部」であり、ここに全ての変更履歴が格納されます。

Yachi

よくあるミスが、デスクトップなどの「通常のフォルダ」の中で git init を実行せず、ユーザーのホームディレクトリ直下で実行してしまうことです。PC全体がGit管理下になってしまい動作が重くなる原因になるので、必ず cd で目的のフォルダに入ってから実行してください。

Step 2: 記録と転送 – 変更履歴を作る3段階プロセス

ここからがGit操作の本番です。
Gitでの保存作業は、よく「引っ越しの荷造り」に例えられます。単に「保存」するのではなく、以下の3ステップを踏む必要があります。

  • Add: 荷物をダンボールに入れる(選別・梱包)
  • Commit: ダンボールをガムテープで閉じ、中身を書く(記録の確定)
  • Push: ダンボールをトラックに載せて新居(GitHub)へ送る(送信)
Mikoto

え、普通に「保存(Ctrl+S)」だけじゃダメなんですか?3段階って面倒すぎません?

Yachi

確かに最初はそう感じますよね。でも、「作業中のファイル(保存)」と「歴史に残したい記録(コミット)」を分けることには大きな意味があります。「とりあえず保存」は何度でもしていいけど、「コミット」は機能が完成したタイミングでする、といった使い分けができるからです。

実践:ファイルを作ってアップロードする

まずは、管理対象となるファイルを作成しましょう。エディタで README.md というファイルを作り、以下の内容を書いて保存してください。

1. ステージング (git add)

変更したファイルを「次回のコミット(記録)に含める」候補として選びます。

これは引っ越しで言うところの「この本をダンボールに入れた」状態です。まだガムテープは貼っていません。

2. コミット (git commit)

梱包した荷物を確定させ、メッセージ(ラベル)を貼ります。

  • -m: メッセージオプション。
  • "...": 変更内容の説明。英語で書くのが慣例です。

これでローカル(手元のPC)への保存は完了しました。しかし、まだGitHub(Web上)には届いていません。

3. プッシュ (git push)

ローカルの変更履歴を、リモート(GitHub)へ送信します。

まず、送信先のアドレスを登録します(初回のみ)。

次に、データを送信します。現在、主流のブランチ名は main です。

ここで認証が求められます。

  • Username: GitHubのユーザー名を入力。
  • Password: 先ほど発行したPersonal Access Tokenを貼り付けます(入力しても画面には文字が表示されませんが、内部では入力されています)。

成功すると Counting objects... done. などのメッセージが表示されます。GitHubの画面をリロードして、ファイルが表示されていれば成功です。

【ここでのポイント】Add(選ぶ)→ Commit(記録する)→ Push(送る)。この3ステップは呪文のように指に覚え込ませましょう。Pushして初めて、データがGitHubにバックアップされたことになります。

READMEファイル作成に欠かせない「Markdown(マークダウン)」の書き方はこちらをチェック!

Step 3: 並行世界の作成 – ブランチ操作とスイッチ

開発現場では、稼働中のメインコードを直接いじることはほとんどありません。バグを出して壊してしまうリスクがあるからです。
そこで登場するのがブランチ(Branch)機能です。これは「メインの世界」から分岐して「パラレルワールド」を作る機能です。

実践:プロフィールの更新作業

main ブランチはそのままで、新しく update-profile という作業用ブランチを作って作業してみましょう。

1. ブランチの作成と移動

かつては checkout コマンドが使われていましたが、現在はより分かりやすい switch コマンドが推奨されています。

Yachi

古い技術記事だと git checkout -b と書かれていますが、個人的には git switch を推奨します。Checkoutは機能が多すぎて混乱の元だからです。これから覚えるなら、より直感的な switch(切り替え)と restore(復元)を使いましょう。

2. ファイルの変更とコミット

README.md に一行追記して保存します。

変更を保存したら、コミットします。

この時点では、update-profile というパラレルワールドだけが進んでおり、main の世界は古いままです。

3. ブランチのプッシュ

この新しいパラレルワールドをGitHubへ送信します。

Step 4: 統合依頼 – プルリクエストからマージまで

ブランチをプッシュすると、GitHubの画面上に「Compare & pull request」というボタンが現れます。
これがPull Request(プルリクエスト / PR)の入り口です。

プルリクエスト (PR) とは?

「私が作った変更(パラレルワールド)を確認して、問題なければ本体(main)に引っ張って(Pull)統合してください」という依頼のことです。チーム開発では、コードレビュー(監査)を受けるための重要なプロセスです。

Mikoto

今回は一人でやってるから、自分で自分に「統合のお願い」をするってことですか?

Yachi

ちょっと奇妙に感じるかもしれませんが、その通りです。個人開発でもPRを作る癖をつけておくと、「何を変更したか」を後で振り返りやすくなりますし、実務に入ったときにスムーズに適応できますよ。

手順

  • GitHub画面の「Compare & pull request」ボタンを押す。
  • タイトルと説明文(何を変更したか)を入力。
  • Create pull request をクリック。
  • (チーム開発ならここでレビューが入りますが、個人なら自分で進めます)
  • Merge pull requestConfirm merge をクリック。

これで、update-profile の内容が main に統合(マージ)されました。

Yachi

実務では、このPRの段階で「コードレビュー」が行われます。先輩エンジニアから「ここのコード、もっと効率的に書けるよ」といった指摘をもらい、修正してまたPushする。このサイクルこそが、エンジニアが成長するメインの場です。

忘れがちな「手元の同期」

Web上でマージしても、手元のPCの main はまだ古いままです。手元の main も最新状態にしておきましょう。

これで、Webとローカルの両方が最新状態で同期されました。

【ここでのポイント】ブランチを切って作業 → PRで統合 → 手元のmainを更新。このサイクルを守ることで、メインのコードを壊さずに安全に開発が進められます。

知っておくべき重要用語:クローンとフォーク

他人のコードを利用する際によく使う操作です。

Clone(クローン)

リモートにあるリポジトリを、自分のPCに丸ごとダウンロードすることです。
Zipファイルでのダウンロードとの違いは、「Gitの変更履歴も付いてくる」点と「(権限があれば)そのままPushできる設定が含まれている」点です。

Yachi

初学者がよくやるミスとして、Zipでダウンロードしてしまうケースがあります。これだとGitの履歴情報が失われてしまうので、必ず git clone コマンドを使うようにしましょう。

Fork(フォーク)

他人のリポジトリを、自分のGitHubアカウント配下にコピーすることです。
オープンソース(OSS)などに貢献したい場合、他人(公式)のリポジトリには直接書き込み権限がありません。そこで一旦自分のアカウントにフォーク(コピー)し、そこで変更を加えてから、本家に対してプルリクエストを送るのが作法です。

フォーク(Fork)を活用する「オープンソース(OSS)」の基本についてはこちらの記事が参考になります。

よくあるトラブルと解決策 (Troubleshooting)

初心者がパニックになりがちなエラーとその対処法です。

1. Authentication failed (認証失敗)

  • 症状: git push 時にエラーが出る。
  • 原因: トークンの入力ミス、有効期限切れ、またはトークン作成時に repo 権限を付け忘れている。
  • 対策: トークンを再発行し、確実にコピー&ペーストする。パスワードを入力していないか再確認。

2. non-fast-forward (拒否される)

  • 症状: git push したら「rejected」と言われる。
  • 原因: GitHub側の履歴が自分より進んでいる(誰かが先にPushした、またはWeb上で編集した)。
  • 対策: まず git pull して最新状態を取り込んでから、再度Pushする。

3. 謎のエディタ (Vim) から出られない

  • 症状: コミットメッセージを入れ忘れて git commit を実行したら、画面が切り替わり操作不能になった。
  • 原因: デフォルトエディタのVimが起動している。
  • 対策:
    1. キーボードの Esc を押す。
    2. :q! と入力する(画面下部に表示されます)。
    3. Enter を押す。これで強制終了して脱出できます。その後、-m オプション付きでコミットし直してください。

FAQ: 初心者が気になるポイント

ずっと無料で使い続けられますか?

はい、可能です。
Microsoftによる買収後、機能制限は大幅に緩和されました。個人開発レベルであれば、Privateリポジトリ(非公開)の作成数も無制限ですし、基本的な機能はずっと無料で利用できます(2026年時点の仕様に基づく)。

英語が苦手ですが日本語化できますか?

公式UIは英語のみです。
ブラウザの翻訳機能を使えば日本語になりますが、推奨しません。なぜなら、エラーメッセージや技術用語(Push, Merge, Commitなど)は世界共通で英語が使われており、日本語化すると逆にトラブルシューティング時の検索性が下がるからです。基本的な単語は慣れてしまいましょう。

MacとWindowsで操作は違いますか?

基本コマンドは同じです。
git addgit push などのコマンドは共通です。ただし、最初のインストール手順や、ファイルパスの表記(\/)などが異なります。また、Windowsユーザーは「Git Bash」を使うことで、Mac(Linuxベース)に近い感覚で操作できます。


まとめ

GitHubは単なる「ファイル置き場」ではなく、エンジニアとしての信頼を担保する重要なプラットフォームです。最初はコマンド操作(黒い画面)に抵抗があるかもしれませんが、やることはシンプルです。

  • 荷造りして (Add)
  • 確定させて (Commit)
  • 発送する (Push)

まずはこのサイクルを体に馴染ませましょう。エラーが出ても、コピーして検索すれば必ず答えが見つかります。今日作ったアカウントとリポジトリが、あなたのエンジニアキャリアの第一歩となるはずです。

Yachi

最後に一つだけ。GitHubには「草(Contributions)」という機能があり、活動すると緑色のマスが埋まっていきます。これを楽しみに毎日コードを書くエンジニアも多いです。まずは一日一回コミットして、草を生やすことから始めてみませんか?継続は力なり、です。

この記事を書いた人

生成AIコンサルタント / テックリード

外資系IT企業にて社内の生成AI活用推進と
生成AIプロダクト開発リードを担当。

かつてはWeb系のエンジニアとして、
モダンな技術スタックでのシステム開発から
数百億レコード規模のデータベース運用までを
フルスタックに経験。

「コードも書けるコンサルタント」として、
活用論と実装論の両面から、
現場で使えるIT知識を発信します。

私と本サイトの詳細は運営者情報をご確認ください。

Contents