Roa run dev

Gitとは?GitHubとは?【入門】

●目次

    GitとGitHubは、現代のソフトウェア開発において欠かせないツールです。
    特にチーム開発や個人開発において、ソースコードのバージョン管理を効率的に行うために用いられます。

    Gitとは?

    Git(ギット)は、分散型バージョン管理システム(DVCS: Distributed Version Control System)です。
    2005年にリーナス・トーバルズ(Linuxカーネルの開発者)によって開発されました。

    Gitの主な特徴

    • 変更履歴を管理できる
    • 任意の時点にコードを戻せる
    • ブランチを使って複数の開発を並行できる
    • 分散型のため、ローカルでも操作可能(サーバー接続が不要)

    Gitでできること

    • ファイルの変更を追跡
    • 複数人での共同開発
    • コードのバックアップ
    • バグの原因追跡(いつ・誰が・何を変更したか)

    GitHubとは?

    GitHub(ギットハブ)は、Gitで管理されるコードをクラウド上でホスティングするサービスです。

    GitHubでできること

    • リモートリポジトリの作成・共有
    • プルリクエストによるレビューとマージ
    • プロジェクト管理(Issue, Projects, Wiki)
    • CI/CDツールとの連携(例:GitHub Actions)
    • オープンソース活動への参加

    GitHubとGitの関係

    Gitはローカルのバージョン管理ツール。
    GitHubはそのGitリポジトリをインターネット上に保存・共有できるプラットフォームです。

    用語整理:よく出てくる用語

    用語意味
    リポジトリ(repository)プロジェクトのデータや履歴を格納する場所
    コミット(commit)変更を記録して保存すること
    プッシュ(push)ローカルの変更をリモートリポジトリに反映すること
    プル(pull)リモートの変更をローカルに取り込むこと
    クローン(clone)リモートリポジトリをローカルにコピーすること
    ブランチ(branch)作業用の分岐を作ることで、安全に開発できる

    Git/GitHubの開発フローの基本イメージ

    • GitHubでリポジトリを作成
    • ローカルPCにクローン(clone)
    • 編集 → コミット(commit)
    • リモートへプッシュ(push)
    • GitHubでレビュー・マージ(pull request)

    Git/GitHubはなぜ必要?

    チーム開発でのメリット

    • 誰が・いつ・何を変更したかが明確になる
    • 作業の衝突を避けるためのブランチ運用が可能
    • 失敗してもいつでも元に戻せる

    個人開発でも有効

    • 定期的にバックアップを取る習慣ができる
    • 複数のバージョンを比較・管理できる
    • ポートフォリオとしてGitHubを使える

    GitHubの他の代表的な機能

    • Actions:自動テストやデプロイなどの自動化
    • Pages:GitHub上に静的なWebページを公開
    • Fork(フォーク):他人のリポジトリをコピーして独自に開発
    • Star/Watch:お気に入り登録や更新通知

    よくある質問(FAQ)

    Q1. GitとGitHubは必ずセットで使う?

    A. いいえ。Git単体でも使えますが、GitHubと組み合わせることで共同開発が格段に便利になります。

    Q2. GitHubは無料?

    A. はい、個人利用やプライベートリポジトリを含む多くの機能は無料で利用できます。

    Q3. GitHub以外に同様のサービスは?

    A. GitLab、Bitbucket、SourceForgeなどがあります。

    まとめ

    GitとGitHubは、現代の開発者にとって「基本スキル」といえる存在です。
    特に以下のような人にとって必須です。

    • Web開発・アプリ開発を学んでいる初学者
    • チームでの開発を始めたい人
    • 自分の作業履歴を記録・管理したい人

    次の記事では、実際にGitのインストールとGitHubのアカウント作成、初期設定を行う手順を詳しく解説していきます。

    👉 続き:「Gitのインストール・初期設定とGitHubアカウント作成を徹底的に解説!【環境構築】」