GitHub

ギットハブ

作成日: 2024-01-01 | 最終更新: 2026-01-19
このページで分かること
  • GitHubとは何か?何に使うのか?
  • GitとGitHubの違い
  • 実際のGitコマンドの使い方(デモ付き)
  • GitHubの便利な機能(Issues、Actions、Pagesなど)

概要

GitHubとは、「ソースコードをバージョン管理し、世界中の開発者と共有・協力できるプラットフォーム」です。

想像してみてください。あなたが小説を書いていて、 「昨日の版に戻したい」「友達に添削してもらいたい」「複数人で共同執筆したい」 と思ったとき、どうしますか?

GitHubは、プログラムのコードでまさにこれを実現します。過去のバージョンを保存し、変更履歴を追跡し、複数人で協力して開発できる環境を提供してくれるのです。

💡 豆知識:GitHubは2008年に誕生し、2018年にMicrosoftに買収されました。 現在、世界中で1億人以上の開発者が利用しています。

🐙 Octocat(オクトキャット)について

GitHubのマスコットキャラクターが「Octocat(オクトキャット)」です。 タコと猫を組み合わせたキャラクターで、GitHubのロゴやアイコンとして使われています。 開発者コミュニティでは、Octocatの様々なバリエーション(忍者、スーパーヒーロー、宇宙飛行士など)が作られており、 GitHubの公式サイトやイベントでも見ることができます。

🐙

基本のOctocat

🥷

忍者Octocat

🚀

宇宙飛行士Octocat

🦸

スーパーヒーローOctocat

💡 補足:OctocatはGitHubの公式マスコットで、開発者コミュニティで親しまれています。 様々なバリエーションがOctodexで公開されています。

GitとGitHubの違い

よく混同されますが、GitとGitHubは別物です:

項目GitGitHub
種類バージョン管理システム(ソフトウェア)Gitを使ったホスティングサービス(Webサービス)
場所あなたのパソコン(ローカル)クラウド(インターネット上)
役割コードの履歴を記録・管理コードを保存・共有・協力
イメージノート(記録ツール)図書館(保管・共有の場)

つまり、Gitという道具を使って、GitHubという場所にコードを保存・共有するイメージです。

実際にやってみよう:Gitコマンド学習デモ

まずは実際に触ってみましょう!よく使うGitコマンドを選んで、使い方と説明を確認してみましょう!

このデモで分かること:

  • GitHubでよく使うコマンドの意味
  • リポジトリ、コミット、プッシュ、プル、ブランチの流れ
  • GitHubというサービスが何をしているのか

Gitコマンドを選択

↑ コマンドを選択してください

基本的な流れ:git addgit commitgit push でGitHubに変更を反映できます!

GitHubの基本用語

リポジトリ(Repository)

プロジェクトのコードやファイルをまとめて保管する「箱」のようなものです。 1つのプロジェクトに対して1つのリポジトリを作ります。

コミット(Commit)

コードの変更を記録することです。 「この日のこの時点でこんな変更をした」という履歴が残ります。

git commit -m "ログイン機能を追加"

プッシュ(Push)

ローカル(自分のパソコン)の変更を、 GitHub(クラウド)にアップロードすることです。

git push origin main

プル(Pull)

GitHub上の最新の変更を、ローカルにダウンロードすることです。 チームメンバーの変更を取り込むときに使います。

git pull origin main

ブランチ(Branch)

コードの「枝分かれ」です。 本番用のmainブランチとは別に、 新機能開発用のfeatureブランチを作ることで、 本番に影響を与えずに開発できます。

プルリクエスト(Pull Request)

「この変更を本番に反映してください」とお願いする機能です。 レビューを経てからマージ(統合)されます。

💡 詳しく学ぶ:プルリクエストとブランチ戦略について詳しく →

GitHubの使い方(基本的な流れ)

1. リポジトリを作成

GitHubのWebサイトで「New repository」をクリック

  • リポジトリ名を入力(例:my-first-project
  • Public(公開)かPrivate(非公開)かを選択
  • 「Create repository」をクリック

2. ローカルで開発

# リポジトリをクローン(ダウンロード)
git clone https://github.com/username/my-first-project.git

# ディレクトリに移動
cd my-first-project

# ファイルを編集
# ... コードを書く ...

# 変更を記録
git add .
git commit -m "初めてのコミット"

3. GitHubにプッシュ

# GitHubにアップロード
git push origin main

これで、あなたのコードがGitHub上に公開されます!

チーム開発とワークフロー

GitHubを使ったチーム開発では、プルリクエストブランチ戦略が重要になります。

💡 詳しく学ぶ:GitHubワークフロー(プルリクエストとブランチ戦略)について詳しく →

GitHubの便利な機能

Issues(イシュー)

バグ報告や機能要望を管理する掲示板のようなものです。 タスク管理にも使えます。

イメージ: プロジェクトの「ToDoリスト」や「問題管理ボード」のようなものです。 チームメンバーが「この機能を追加したい」「このバグを直したい」と書き込むと、 他のメンバーが対応できます。

📋 Issuesの画面イメージ:
GitHubのリポジトリページで「Issues」タブを開くと、バグ報告や機能要望が一覧で表示されます。 各Issueにはタイトル、説明、ラベル、担当者、マイルストーンなどの情報が表示され、 コメントで議論を進めることができます。

💡 補足:Issuesでは、ラベルを付けて分類したり、マイルストーンを設定して進捗を管理したりできます。 画像やスクリーンショットを添付して、問題を視覚的に説明することもできます。

詳しくはGitHub公式ドキュメント →

GitHub Actions

コードをpushしたときに自動的にテストを実行したり、Vercelにデプロイしたりできる自動化機能です。

イメージ: 「コードをpushしたら、自動的にテストを走らせて、問題なければ本番環境にデプロイする」 という一連の流れを自動化できます。手動でやっていた作業を、GitHubが自動でやってくれます。

⚙️ GitHub Actionsの画面イメージ:
GitHubのリポジトリページで「Actions」タブを開くと、自動化されたワークフローの実行履歴が表示されます。 各ワークフローの実行状況(成功・失敗)が緑や赤のマークで表示され、 クリックすると詳細なログを確認できます。

💡 補足:GitHub Actionsでは、ワークフローをYAMLファイルで定義します。 例えば「プルリクエストが作成されたら自動テストを実行」「mainブランチにマージされたら本番環境にデプロイ」といった設定ができます。

詳しくはGitHub公式ドキュメント →

GitHub Pages

静的なWebサイトを無料でホスティングできる機能です。 ポートフォリオサイトやドキュメントの公開に便利です。

詳しくはGitHub公式ドキュメント →

README.md

リポジトリの「顔」となるファイルです。 プロジェクトの説明、使い方、インストール方法などを書きます。

📝 READMEの画面イメージ:
GitHubのリポジトリページを開くと、一番上にREADME.mdの内容が表示されます。 プロジェクトの概要、インストール方法、使い方などが分かりやすく書かれていると、 他の開発者がプロジェクトを理解しやすくなります。

💡 ポイント:READMEは、プロジェクトを見た人が最初に読むファイルです。 分かりやすく書くことで、他の開発者がプロジェクトに参加しやすくなります。

実在のREADME例:このサイト(IT用語辞典)のREADMEも、GitHubで公開されています。 実際のプロジェクトでは、こんな感じで書かれています:

# 実践型IT用語辞典

## 概要
見習いエンジニアやIT初心者向けの、実践的なIT用語辞典サイトです。
「見て、触って、学べる」をコンセプトに、実際に動かせる体験デモを通じて
専門用語を分かりやすく解説します。

## 技術スタック
- Next.js 14 (App Router)
- TypeScript
- React

## セットアップ
```
# 依存関係のインストール
npm install

# 開発サーバーを起動
npm run dev
```

## 使い方
1. 用語ページで専門用語を検索
2. 体験デモで実際に動かして理解
3. コード例を見て実装方法を学ぶ

## ライセンス
MIT

READMEに書くべき内容:

  • プロジェクトの目的と概要
  • インストール方法
  • 使い方や実行方法
  • 技術スタック(使っている技術)
  • 貢献方法(他の人が参加する方法)
  • ライセンス情報

オープンソースとGitHub

GitHubはオープンソースプロジェクトの中心地でもあります。

オープンソースとは?

ソースコードを無料で公開し、誰でも自由に使える・改良できるプロジェクトのことです。

有名なオープンソースプロジェクト

  • React: Facebookが開発したUIフレームワーク
  • Vue.js: 人気のJavaScriptフレームワーク
  • TensorFlow: Googleの機械学習ライブラリ
  • VS Code: Microsoftの人気コードエディタ

これらのプロジェクトは、世界中の開発者が協力して開発しています。 あなたも、バグ報告やドキュメント修正から、オープンソースに貢献できます!

GitHubのプロフィール

GitHubのプロフィールは、開発者の「ポートフォリオ」になります。

緑の芝生(Contribution Graph)と「草を生やす」

プロフィールに表示される緑色のマス目は、あなたの活動履歴を示します。 毎日コミットすると、緑のマスが増えていきます。

「草を生やす」とは、GitHubのContribution Graph(緑の芝生)に緑色のマスを増やすことを指すスラングです。 毎日コミットをすると、その日のマスが緑色になり、まるで「草が生える」ように見えることから、この表現が生まれました。

開発者コミュニティでは「今日も草を生やした!」「草が途切れないように頑張る」など、継続的な開発活動を表現する言葉として使われています。

💡 就職・転職でも注目される!企業の採用担当者は、GitHubのプロフィールを見て技術力を判断することもあります。 特にContribution Graph(緑の芝生)が充実していると、継続的に開発活動をしていることが分かり、評価されやすくなります。

GitHub vs 他のサービス

サービス特徴向いている人
GitHub最大手、オープンソースに強い、豊富な機能個人開発者、オープンソース貢献者
GitLabCI/CDに強い、自社サーバーに構築可能企業、DevOpsチーム
BitbucketJiraと連携しやすい、小規模チームは無料Atlassian製品を使う企業

GitHubを使うメリット・デメリット

メリット

  • バージョン管理: 過去のコードにいつでも戻せる
  • バックアップ: クラウドに保存されるので、PCが壊れても安心
  • コラボレーション: チームで効率的に開発できる
  • ポートフォリオ: 自分のスキルを証明できる
  • 学習リソース: 他人のコードを見て学べる

デメリット

  • 学習コスト: Git/GitHubの使い方を覚える必要がある
  • コンフリクト: 複数人で同じファイルを編集すると衝突が起きる
  • 公開リスク: Publicリポジトリは誰でも見られる(APIキーなどに注意)

詳しくはGitHub公式ドキュメントGit公式ドキュメントで確認できます。

初心者向けのヒント

1. まずは自分のプロジェクトから

いきなりチーム開発は難しいので、まずは自分のプロジェクトで練習しましょう。

2. コミットメッセージは丁寧に

「修正」「更新」ではなく、「ログイン画面のレイアウトを修正」のように、 何をしたか具体的に書きましょう。

3. .gitignoreを活用

node_modules.envなど、 GitHubにアップロードしたくないファイルは.gitignoreに記載しましょう。

# .gitignore
node_modules/
.env
.DS_Store

4. READMEを書く習慣を

未来の自分や他の人が見たときに、すぐに理解できるようにREADMEを書きましょう。

関連用語

用語説明
VercelGitHubと連携して自動デプロイできるホスティングサービス
APIGitHub APIを使ってプログラムから操作できる
GitHubワークフロープルリクエストとブランチ戦略について
GitGitHubの基盤となるバージョン管理システム

よくある質問(FAQ)