エンジアップ エンジアップ

もう迷わない。ITエンジニアのための総合情報サイト

GitとGitHubって何?初心者のためのバージョン管理入門
投稿
X LINE B! f

GitとGitHubって何?初心者のためのバージョン管理入門

プログラミングを学び始めると、必ずといっていいほど「GitとGitHubを使えるようにしてください」と言われます。でも最初は「Gitって何?GitHubとどう違うの?」と混乱する方がほとんどです。本記事では、バージョン管理の仕組みからGitの基本コマンド、GitHubの使い方まで、初心者向けにわかりやすく解説します。

Ⅰ. GitとGitHubの違い

1. Gitとは

Gitとは、ファイルの変更履歴を記録・管理するためのバージョン管理ツールです。自分のパソコン上で動くソフトウェアで、「いつ・誰が・何を変えたか」をすべて記録しておけます。

たとえば、小説を書いているときに「昨日の原稿に戻したい」と思うことがあるように、プログラムのコードも「バグを混入させる前の状態に巻き戻したい」という場面が頻繁にあります。Gitはそれをいつでも実現できる仕組みです。

2. GitHubとは

GitHubは、Gitで管理したコードをインターネット上に保存・共有できるクラウドサービスです。Microsoftが運営しており、世界中の開発者が利用するプラットフォームになっています。

GitHubを使うと以下のことができます。

  • コードをオンラインにバックアップできる
  • チームで同じコードを共同編集できる
  • 自分の作品(ポートフォリオ)を公開できる
  • オープンソースプロジェクトに参加できる

3. GitとGitHubの関係

項目GitGitHub
種類ソフトウェア(ツール)Webサービス
動作場所自分のPC上インターネット上
主な役割変更履歴の記録コードの共有・共同開発
料金無料基本無料(有料プランあり)

「Gitが手帳、GitHubがその手帳を預けるクラウドロッカー」とイメージすると理解しやすいです。

Ⅱ. バージョン管理がなぜ必要なのか

1. バージョン管理がない世界のあるある

Gitを知らない頃、多くの人は以下のような経験をします。

  • 最終版.xlsx最終版2.xlsx最終版_本当に最後.xlsx というファイルが増殖する
  • 動いていたコードを書き換えたら壊れた。でも前のコードを覚えていない
  • 複数人で同じファイルを編集して、誰かの変更が上書きされて消える

Gitを使うと、これらすべての問題が解決します。変更のたびに「スナップショット(コミット)」が記録されるため、どの時点にも戻れる安全網が常に張られた状態になります。

Ⅲ. Gitの基本コマンド

1. まず覚えるべき5つのコマンド

Gitには数多くのコマンドがありますが、日常的に使うのはごく一部です。最初は以下の5つだけ覚えれば作業を始められます。

コマンド意味使う場面
git initリポジトリを作成する新しいプロジェクトを始めるとき
git add変更をステージに追加するコミット前の準備
git commit変更を記録する区切りのいい作業が終わったとき
git pushGitHubへ送信するリモートに反映させたいとき
git pullGitHubから取得するチームの変更を取り込むとき

(1) コミットまでの流れ

コードを変更したあと、次の手順でGitに記録します。

  • git add . ですべての変更をステージに追加する
  • git commit -m "変更の内容を一言で書く" で変更を記録する

コミットメッセージは「何を変えたか」が分かる短い文で書くのが鉄則です。

2. ブランチという概念

Gitの強力な機能のひとつがブランチです。ブランチとは、メインのコードに影響を与えずに新機能の開発や修正を試みるための「作業用の分岐」です。

たとえるなら、本の原稿をコピーして別の場所で書き直し、うまくいったら元の本に取り込む、というイメージです。チーム開発では複数人が別々のブランチで作業し、完成したものをメインブランチに統合する流れが一般的です。

Ⅳ. GitHubを実際に使ってみる

1. リポジトリを作ってコードを公開する

GitHubでの基本的な作業の流れは以下のとおりです。

  • GitHubにアカウントを作成する(無料)
  • 「New repository」から新しいリポジトリを作成する
  • ローカルのGitと紐づけて git push でコードをアップロードする

2. プルリクエストとは

チーム開発で欠かせないのがプルリクエスト(PR)という仕組みです。自分のブランチでの変更をメインブランチに取り込んでほしいときに「このコードを確認してください」と申請する機能です。

レビュアーがコードを確認し、問題がなければ承認してマージ(統合)されます。品質を保ちながらチームで開発するための、現場で最もよく使われるワークフローです。

Ⅴ. 初心者がつまずきやすいポイント

1. よくあるトラブルと対処法

トラブル原因対処法
pushできないリモートと履歴がずれているgit pull で最新を取得してから再度push
コンフリクトが起きた同じ箇所を複数人が変更した競合箇所を手動で確認して修正してコミット
commitを間違えた誤ったメッセージや変更を記録したgit commit --amend で直前のコミットを修正
ブランチを間違えた作業するブランチを間違えたgit stash で変更を一時退避して正しいブランチへ移動

Ⅵ. まとめ

GitとGitHubは、現代のソフトウェア開発に欠かせない基礎スキルです。最初は難しく感じるかもしれませんが、add → commit → push という3ステップを体で覚えるところから始めれば十分です。一度使い慣れると「もうGitなしでは作業できない」と感じるほど便利なツールです。ポートフォリオをGitHubに公開することは転職活動でも評価されるため、早い段階から習慣にしておくことをおすすめします。