--- layout: default title: "GitHub機能一覧 - シンプルガイド" description: "GitHubで何ができるの?機能一覧と簡単な使い方" --- # 🌟 GitHubの機能一覧 - 何ができるの? GitHubって何ができるの?という疑問に、シンプルにお答えします! --- ## 📌 GitHubの主な機能一覧(全20機能) ### 1. 📁 **リポジトリ(Repository)** **何これ?** → プロジェクトを保存する場所(フォルダみたいなもの) **何ができる?** - コードやファイルを保存 - 変更履歴を自動記録 - 複数人で共有・共同編集 - バックアップとして機能 **実際の使用例:** - 🌐 **Webサイト開発**: HTML/CSS/JavaScriptファイルを管理 - 📝 **ドキュメント管理**: マニュアルや仕様書を保存 - 🎨 **デザイン管理**: 画像やデザインファイルの履歴管理 - 📊 **データ分析**: JupyterノートブックやCSVファイル管理 **こんな時に便利:** - 「先週のバージョンに戻したい」→ 履歴から復元可能 - 「チームで同じファイルを編集」→ 競合を自動検出 - 「PCが壊れた」→ GitHubから復元できる **使い方:** 1. 右上の「+」ボタン → 「New repository」 2. 名前を入力(例:my-awesome-website) 3. Public/Private を選択 4. 「Create repository」をクリック --- ### 2. 🌿 **ブランチ(Branch)** **何これ?** → 作業を分ける仕組み(平行世界を作るイメージ) **何ができる?** - 本番に影響せずに開発・実験 - 複数の機能を並行開発 - 失敗しても本番は無事 - チームメンバーの作業が混ざらない **実際の使用例:** - 🆕 **新機能開発**: `feature/login` ブランチでログイン機能開発 - 🐛 **バグ修正**: `fix/button-error` ブランチで緊急修正 - 🧪 **実験**: `experiment/new-design` で新デザインを試す - 📱 **バージョン管理**: `release/v2.0` で次期バージョン準備 **こんな時に便利:** - 「新機能を試したいけど、壊れたら困る」 - 「AさんとBさんが同時に違う機能を開発」 - 「お客様用と開発用を分けたい」 **使い方:** 1. リポジトリページの「main」ボタンをクリック 2. 新しいブランチ名を入力(例:feature/shopping-cart) 3. 「Create branch」をクリック 4. 安心して開発開始! --- ### 3. 💾 **コミット(Commit)** **何これ?** → 変更を保存すること(セーブポイントを作る) **何ができる?** - ファイルの変更を記録 - いつ誰が何を変更したか分かる - 過去の任意の状態に戻せる - 変更理由を残せる **実際の使用例:** - 🎯 **機能追加**: 「ショッピングカート機能を追加」 - 🐛 **バグ修正**: 「ログインエラーを修正 #123」 - 💄 **デザイン変更**: 「ヘッダーの色を青に変更」 - 📝 **ドキュメント更新**: 「インストール手順を追加」 **良いコミットメッセージの例:** ``` ✅ 良い例: - feat: ユーザー認証機能を追加 - fix: カートの合計金額計算エラーを修正 - docs: APIの使用方法を追記 - style: ボタンのデザインを改善 ❌ 悪い例: - 更新 - fix - aaaa ``` **使い方:** 1. ファイルを編集 2. 「Commit changes」ボタンをクリック 3. 何を変更したか分かりやすく説明 4. 「Commit changes」で保存完了 --- ### 4. 🔄 **プルリクエスト(Pull Request)** **何これ?** → 変更を提案する仕組み(「この変更、取り込んでください」) **何ができる?** - コードレビューを依頼 - 変更内容を説明・議論 - チームメンバーからフィードバック - 自動テストを実行 **実際の使用例:** - ✨ **機能追加**: 「検索機能を追加しました」 - 🔧 **バグ修正**: 「メモリリークを修正しました」 - 📈 **パフォーマンス改善**: 「ページ読み込み速度50%改善」 - 📦 **ライブラリ更新**: 「Reactをv18にアップデート」 **PRのフロー:** ``` 1. ブランチで開発 2. PRを作成 3. レビュー・議論 4. 承認されたらマージ ``` **使い方:** 1. 「Pull requests」タブ → 「New pull request」 2. 比較するブランチを選択 3. 変更内容を詳しく説明 4. レビュアーを指定 5. 「Create pull request」をクリック --- ### 5. 🎫 **イシュー(Issues)** **何これ?** → タスク管理・バグ報告(TODOリストみたいなもの) **何ができる?** - やることリストを作成 - バグや問題を報告 - アイデアや提案を共有 - 進捗を追跡 **実際の使用例:** - 🐛 **バグ報告**: 「スマホでメニューが開かない」 - 🎯 **機能要望**: 「ダークモードを追加してほしい」 - 📝 **TODO管理**: 「ドキュメントを整理する」 - ❓ **質問**: 「この機能の使い方が分からない」 **ラベルを使った整理:** - 🐛 `bug` - バグ・不具合 - ✨ `enhancement` - 新機能 - 📝 `documentation` - ドキュメント - ❓ `question` - 質問 - 🔥 `urgent` - 緊急 **使い方:** 1. 「Issues」タブ → 「New issue」 2. 分かりやすいタイトルを付ける 3. スクリーンショットや詳細を追加 4. ラベルを付けて分類 5. 「Submit new issue」をクリック --- ### 6. 📋 **プロジェクト(Projects)** **何これ?** → タスクボード(カンバン方式のタスク管理) **何ができる?** - タスクを視覚的に管理 - 進捗状況を一目で把握 - チームの作業を調整 - スプリント計画 **実際の使用例:** - 🎯 **製品開発**: ToDo → 進行中 → レビュー → 完了 - 📖 **コンテンツ作成**: 企画 → 執筆 → 編集 → 公開 - 🎨 **デザイン作業**: アイデア → スケッチ → デザイン → 実装 - 📊 **イベント企画**: 準備 → 告知 → 実施 → 振り返り **ボードの種類:** - **カンバン**: カードを移動させる - **テーブル**: スプレッドシート風 - **ロードマップ**: タイムライン表示 **使い方:** 1. 「Projects」タブ → 「New project」 2. ボードタイプを選択 3. カラムを設定(ToDo, 進行中, 完了など) 4. Issueをカードとして追加 5. ドラッグ&ドロップで管理 --- ### 7. ⚡ **アクション(Actions)** **何これ?** → 自動化ツール(ロボットが代わりに作業) **何ができる?** - テストを自動実行 - Webサイトを自動更新 - 定期的なタスクを実行 - コード品質をチェック **実際の使用例:** - 🧪 **テスト自動化**: コミット毎にテスト実行 - 🌐 **サイトデプロイ**: pushすると自動で公開 - 📦 **リリース**: タグ付けで自動パッケージ作成 - 🔔 **定期実行**: 毎日データを収集・更新 - 🔍 **コード検査**: スペルチェックやフォーマット **人気のワークフロー:** ```yaml # テスト自動実行 on: [push, pull_request] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - run: npm test ``` **使い方:** 1. 「Actions」タブを開く 2. テンプレートを選択または新規作成 3. YAMLファイルを編集 4. 「Start commit」で保存 5. 自動で実行開始! --- ### 8. 🌐 **ページ(Pages)** **何これ?** → 無料のWebサイト公開(ホームページが作れる) **何ができる?** - 静的Webサイトを公開 - ドキュメントサイト作成 - ポートフォリオ公開 - ブログ運営 **実際の使用例:** - 👨‍💼 **個人サイト**: username.github.io - 📚 **ドキュメント**: 製品マニュアル・APIドキュメント - 🎨 **ポートフォリオ**: 作品集・実績紹介 - 💰 **ランディングページ**: 製品紹介サイト - 📖 **ブログ**: JekyllやHugoでブログ運営 **サポートしているもの:** - HTML/CSS/JavaScript - Jekyll(ブログエンジン) - カスタムドメイン **使い方:** 1. Settings → Pages 2. Source で「Deploy from a branch」選択 3. Branch を「main」または「gh-pages」に設定 4. 「Save」をクリック 5. https://username.github.io/repositoryでアクセス --- ### 9. 📚 **ウィキ(Wiki)** **何これ?** → プロジェクトの説明書(内部ドキュメント) **何ができる?** - 詳細なドキュメント作成 - 使い方マニュアル - FAQ・Q&A集 - 用語集・リファレンス **実際の使用例:** - 📖 **インストールガイド**: 環境別の設定手順 - 🔧 **APIドキュメント**: エンドポイント一覧 - 🎯 **開発ガイドライン**: コーディング規約 - ❓ **FAQ**: よくある質問と回答 - 📈 **チュートリアル**: 機能の使い方解説 **Wiki vs README:** - **README**: プロジェクトの概要(簡潔に) - **Wiki**: 詳細なドキュメント(徹底的に) **使い方:** 1. 「Wiki」タブを開く 2. 「Create the first page」 3. ページタイトルと内容を入力 4. マークダウンで装飾 5. 「Save page」で保存 --- ### 10. 👁️ **ウォッチ(Watch)** **何これ?** → 更新通知を受け取る(プロジェクトを監視) **何ができる?** - プロジェクトの更新を追跡 - 重要な変更を見逃さない - 興味のあるプロジェクトをフォロー - メールで通知を受け取る **通知レベル:** - 🔔 **All Activity**: すべての活動を通知 - 🔕 **Participating**: 自分が関係するもののみ - 🔇 **Ignore**: 通知をオフ **実際の使用例:** - 🚀 **人気OSS**: ReactやVue.jsの更新を追跡 - 💼 **仕事のプロジェクト**: チームの進捗を把握 - 📖 **学習素材**: 教育コンテンツの更新 - 🔍 **競合調査**: 競合他社のOSS動向 **使い方:** 1. リポジトリページの「Watch」ボタン 2. 通知レベルを選択 3. 通知設定をカスタマイズ 4. メールまたはGitHub通知で確認 --- ### 11. ⭐ **スター(Star)** **何これ?** → お気に入り登録(「いいね!」ボタン) **何ができる?** - 気に入ったプロジェクトを保存 - 後で見返せる - 作者を応援・評価 - 人気度の指標 **実際の意味:** - 💯 **多いほど人気**: 1000★ = かなり人気 - 🏆 **開発者の励み**: モチベーションになる - 🔖 **ブックマーク**: 後で使うプロジェクトを保存 - 📊 **信頼性**: スター数で品質を判断 **スターしたプロジェクトの見方:** 1. プロフィール → Starsタブ 2. カテゴリ別に整理可能 3. 検索もできる **使い方:** 1. リポジトリページの「⭐ Star」ボタン 2. クリックするだけ! 3. ボタンが黄色になれば完了 --- ### 12. 🍴 **フォーク(Fork)** **何これ?** → プロジェクトをコピー(自分版を作る) **何ができる?** - 他人のプロジェクトをコピー - 自分用にカスタマイズ - 改善案を提案 - 実験・学習用に使う **実際の使用例:** - 🔧 **OSS貢献**: バグ修正を提案 - 🎮 **カスタマイズ**: 自分好みに改造 - 📖 **学習**: コードを読んで勉強 - 🧪 **実験**: 新機能を試す - 🌐 **ローカライズ**: 日本語化など **Forkの流れ:** ``` 1. Forkボタンでコピー 2. 自分のリポジトリで編集 3. 変更をコミット 4. Pull Requestで提案 ``` **使い方:** 1. リポジトリページの「🍴 Fork」ボタン 2. 自分のアカウントにコピー作成 3. 「username/repository」の形で保存 4. 完全に自分のものとして編集可能 --- ### 13. 📥 **クローン(Clone)** **何これ?** → リポジトリをパソコンにダウンロード(作業開始!) **何ができる?** - GitHubからローカルPCへコピー - オフラインで作業可能 - 好きなエディタで編集 - 高速な開発作業 **実際の使用例:** - 💻 **ローカル開発**: VSCodeでコード編集 - 🎮 **ゲーム開発**: Unityでプロジェクト開発 - 📱 **アプリ開発**: XcodeやAndroid Studioで作業 - 🌐 **Web開発**: ローカルサーバーでテスト **Cloneの方法:** ```bash # HTTPS版(簡単) git clone https://github.com/user/repo.git # SSH版(セキュア) git clone git@github.com:user/repo.git # GitHub Desktop(GUI) Code → Open with GitHub Desktop ``` **使い方:** 1. リポジトリページの「Code」ボタン 2. HTTPS/SSHのURLをコピー 3. ターミナルで `git clone [URL]` 4. または GitHub Desktop でワンクリック 5. フォルダが作成されて作業開始! --- ### 14. ⬆️ **プッシュ(Push)** **何これ?** → ローカルの変更をGitHubにアップロード(送信!) **何ができる?** - 自分の作業を保存・共有 - チームメンバーに公開 - バックアップ - どこからでもアクセス可能に **実際の流れ:** ``` 1. ローカルで編集 2. git add .(変更を記録) 3. git commit -m "メッセージ" 4. git push(GitHubに送信) ``` **Pushできない時:** - ❌ **エラー**: 「! [rejected]」 - 🔄 **解決**: 先に `git pull` で最新版を取得 - ✅ **再試行**: `git push` **使い方:** 1. ローカルで変更・コミット 2. `git push origin main` 実行 3. または GitHub Desktop の「Push origin」 4. GitHubで変更が確認できる --- ### 15. ⬇️ **プル(Pull)** **何これ?** → GitHubから最新の変更を取得(同期!) **何ができる?** - 他の人の変更を取り込む - 最新版に更新 - 競合を防ぐ - チーム作業をスムーズに **いつPullする?** - 🌅 **朝一番**: 作業開始前に - 🔄 **Push前**: 必ず最新版を確認 - 📢 **通知が来たら**: チームの更新を取得 - 🕹️ **長時間作業後**: 定期的に同期 **コンフリクト(競合)が起きたら:** ``` <<<<<<< HEAD 自分の変更 ======= 他の人の変更 >>>>>>> origin/main ``` → 手動で選んで解決 **使い方:** 1. `git pull origin main` 実行 2. または GitHub Desktop の「Pull origin」 3. 変更が自動マージ 4. 競合があれば解決 --- ### 16. 🔀 **マージ(Merge)** **何これ?** → ブランチを統合(変更をまとめる) **何ができる?** - 機能開発を本番に反映 - 複数の変更を一つに - チームの作業を統合 - 安全に変更を取り込む **マージの種類:** - 🚀 **Fast-forward**: 単純に進めるだけ - 🤝 **3-way merge**: 両方の変更を統合 - 📚 **Squash merge**: 複数コミットを1つに - 🌿 **Rebase**: 履歴をきれいに整理 **PRマージのフロー:** ``` 1. featureブランチで開発 2. Pull Request作成 3. コードレビュー 4. CI/CDテスト 5. 承認後マージ ``` **使い方:** 1. Pull Request ページを開く 2. レビュー完了を確認 3. 「Merge pull request」ボタン 4. マージ方法を選択 5. 「Confirm merge」で完了 --- ### 17. 💬 **ディスカッション(Discussions)** **何これ?** → フォーラム形式の議論場所(コミュニティ広場) **何ができる?** - Q&A形式で質問 - アイデアの議論・提案 - お知らせの共有 - コミュニティ構築 **カテゴリの種類:** - 📰 **Announcements**: お知らせ・リリース情報 - 💡 **Ideas**: アイデア提案・投票 - ❓ **Q&A**: 質問と回答 - 🗣️ **General**: 一般的な話題 - 🏆 **Show and tell**: 作品紹介 **実際の使用例:** - 🚀 **ロードマップ議論**: 今後の開発方針 - 🎓 **チュートリアル**: 初心者向け解説 - 🎆 **コミュニティイベント**: ハッカソン企画 - 💜 **ユーザーサポート**: 困ったときの相談 **使い方:** 1. 「Discussions」タブを開く 2. 「New discussion」ボタン 3. カテゴリを選択 4. タイトルと内容を入力 5. 「Start discussion」で投稿 --- ### 18. 📝 **ギスト(Gist)** **何これ?** → コードスニペットの共有(メモ帳みたいなもの) **何ができる?** - 短いコードを簡単共有 - メモやスクリプト保存 - ブログに埋め込み - バージョン管理も可能 **実際の使用例:** - 📄 **設定ファイル**: .vimrcや.bashrcの共有 - 🔧 **ワンライナー**: 便利なコマンド - 📖 **コードサンプル**: ブログ記事用 - 💾 **SQLクエリ**: よく使うクエリ集 - 🎮 **ゲームスコア**: ハイスコアのJSON **Public vs Secret:** - **Public Gist**: 検索可能・誰でも閲覧 - **Secret Gist**: URLを知っている人だけ **使い方:** 1. gist.github.com にアクセス 2. ファイル名とコードを入力 3. 言語を選択(シンタックスハイライト) 4. 「Create secret gist」または「Create public gist」 5. URLを共有または埋め込み --- ### 19. 📦 **パッケージ(Packages)** **何これ?** → パッケージ管理(ライブラリ公開・配布) **何ができる?** - パッケージを公開・管理 - バージョン管理 - 依存関係の追跡 - プライベートパッケージ **サポートしているパッケージ:** - 📦 **npm**: JavaScriptパッケージ - 🐳 **Docker**: コンテナイメージ - 💎 **RubyGems**: Rubyパッケージ - ☕ **Maven**: Javaパッケージ - 📦 **NuGet**: .NETパッケージ **実際の使用例:** ```bash # npmパッケージを公開 npm publish --registry=https://npm.pkg.github.com # Dockerイメージをpush docker push ghcr.io/username/image:tag ``` **使い方:** 1. リポジトリの「Packages」タブ 2. 「Publish your first package」 3. パッケージタイプを選択 4. 指示に従って設定 5. パッケージをアップロード --- ### 20. 💖 **スポンサー(Sponsors)** **何これ?** → 開発者支援(投げ銭・寄付システム) **何ができる?** - オープンソース開発者を支援 - 定期的な寄付(月額) - 特典の提供・受け取り - コミュニティへの貢献 **スポンサーティア(例):** - 🥉 **$1/月**: 感謝の気持ち - ☕ **$5/月**: コーヒー代支援 - 🍕 **$10/月**: スポンサーREADME記載 - 🎆 **$50/月**: 優先サポート - 🚀 **$100/月**: 企業スポンサー **なぜスポンサー?** - 💚 **持続可能なOSS**: 開発継続を支援 - 🎯 **機能リクエスト**: 優先度を上げる - 🙏 **感謝の表現**: 使っているプロジェクトへ - 🌟 **コミュニティ参加**: 特別なDiscussionsへ **使い方:** 1. プロフィールの「💖 Sponsor」ボタン 2. 支援ティアを選択 3. 支払い方法を設定 4. 「Select」で支援開始 5. 特典を受け取る --- ## 🎯 どの機能から始めるべき? ### 🔰 完全初心者の方 1. **リポジトリ作成** - まず保存場所を作る 2. **ファイルアップロード** - 簡単なファイルを追加 3. **コミット** - 変更を保存してみる ### 📝 ドキュメント管理したい方 1. **リポジトリ作成** 2. **Wiki** or **Pages** - ドキュメント公開 3. **Issues** - フィードバック受付 ### 👥 チーム開発したい方 1. **リポジトリ作成** 2. **ブランチ** - 作業を分ける 3. **Pull Request** - レビューする 4. **Projects** - タスク管理 ### 💻 本格的に開発したい方 1. **Clone** - リポジトリをダウンロード 2. **コミット** → **Push** - 変更をアップロード 3. **Pull** - 最新版を取得 4. **Merge** - 変更を統合 --- ## 💡 覚えておくと便利なこと ### 📌 よく使うボタンの場所 - **新規作成**: 右上の「+」ボタン - **設定**: リポジトリの「Settings」タブ - **ファイル追加**: 「Add file」ボタン - **編集**: ファイルの鉛筆アイコン ### 🔍 便利なショートカット - `t` - ファイル検索 - `b` - ブランチ切り替え - `w` - ブランチ選択 - `s` - 検索にフォーカス ### 💬 基本的な用語 - **Clone(クローン)**: リポジトリをダウンロード - **Push(プッシュ)**: 変更をアップロード - **Pull(プル)**: 最新版をダウンロード - **Merge(マージ)**: 変更を統合 - **Fetch(フェッチ)**: 変更を確認だけ(取り込まない) - **Remote(リモート)**: GitHub上のリポジトリ - **Local(ローカル)**: 自分のPC上のリポジトリ --- ## 🚀 次のステップ 1. **アカウント作成** - まだの方は[GitHub.com](https://github.com)で無料登録 2. **最初のリポジトリ** - 「Hello World」を作ってみる 3. **README作成** - プロジェクトの説明を書く 4. **Issues体験** - 自分でタスクを作ってみる --- ## ❓ よくある質問 **Q: 無料で使える?** A: はい!個人利用は基本無料です。 **Q: プログラミングできなくても使える?** A: はい!ドキュメント管理やタスク管理にも使えます。 **Q: 公開しないといけない?** A: いいえ!プライベートリポジトリで非公開にできます。 **Q: 日本語は使える?** A: はい!ファイル名以外は日本語OK。 --- ## 📚 もっと詳しく知りたい方へ 各機能の詳しい使い方は、個別のガイドをご覧ください: - [初心者向け入門ガイド](github-beginner-guide.md) - [実践的な操作手順](github-hands-on.md) - [Git ワークフローガイド](github-git-workflow.md) - Clone → 編集 → Push の流れ - [**🆕 20機能の詳細ガイド**](../advanced/github-features-detailed.md) - 各機能の完全解説 でも、まずは**リポジトリを作って、何か保存してみる**ことから始めましょう!🎉